The comment needs to be followed after optional whitespace and other comments by case or default keywords or by a user label that precedes some case or default label. If a macro foo takes one argument, and you want to supply an empty argument, you must write at least some whitespace between the parentheses, like this: The following language-independent options do not enable specific warnings but control the kinds of diagnostics produced by GCC. Warn about duplicated conditions in an if-else-if chain. To prevent a function from being removed, specify the function using the used attribute, for example:
In the above example, n could be negative, causing a larger than expected argument to be implicitly cast into the alloca call.
Dead code elimination
This option warns on calls to alloca with an integer argument whose value is either zero, or that is not bounded by a controlling predicate that limits its value to at most byte-size. Warn if a built-in function is declared with an incompatible signature or as a non-function, or when a built-in function declared with a type that does not include a prototype is called with arguments whose promoted types do not match those expected by the function. Sometimes I use the below trick to switch between two lazy comments. Give an error whenever the base standard see -Wpedantic requires a diagnostic, in some cases where there is undefined behavior at compile-time and in some other cases that do not prevent compilation of programs that are valid according to the standard. But comments often contain unbalanced singlequote characters known in English as apostrophes. In particular, instead of testing for equality, you should check to see whether the two values have ranges that overlap; and this is done with the relational operators, so equality comparisons are probably mistaken.