bool aggregate_return:1; /**< Warn if any functions that return structures or unions are defined or called */
bool bad_function_cast:1; /**< Warn whenever a function call is cast to a non-matching type */
#endif
+ bool attribute:1; /**< Warn if an unexpected `__attribute__' is used or function attributes applied to variables, etc. */
bool char_subscripts:1; /**< Warn if an array subscript has the type 'char' */
- bool check_format:1; /**< Check printf-style format strings */
+ bool format:1; /**< Check printf-style format strings */
+ bool nonnull:1; /**< Warn about passing a null pointer for arguments marked nonnull */
#if 0 // TODO
bool cast_align:1; /**< Warn whenever a pointer is cast such that the required alignment of the target is increased */
bool cast_qual:1; /**< Warn whenever a pointer is cast so as to remove a type qualifier from the target type */
#if 0 // TODO
bool write_strings:1; /**< Give string constants the type 'const char[LENGTH]' so that copying the address of one into a 'char *' pointer will get a warning */
#endif
+ bool return_type:1; /**< Warn whenever a function is defined with a return-type that
+ defaults to `int'. Also warn about any `return' statement with no
+ return-value in a function whose return-type is not `void'. */
} warning_t;
extern warning_t warning;