CertC-EXPΒΆ
Expressions
Nested Rules
Use parentheses for precedence of operation |
|
Be aware of the short-circuit behavior of the logical AND and OR operators |
|
Do not cast away a const qualification |
|
Do not diminish the benefits of constants by assuming their values in expressions |
|
Do not depend on the order of evaluation of subexpressions or the order in which side effects take place |
|
Do not ignore values returned by functions |
|
Beware of integer promotion when performing bitwise operations on integer types smaller than int |
|
Do not place a semicolon on the same line as an if, for, or while statement |
|
Use braces for the body of an if, for, or while statement |
|
Perform explicit tests to determine success, true and false, and equality |
|
Do not depend on the order of evaluation for side effects |
|
Do not access a volatile object through a nonvolatile reference |
|
Do not read uninitialized memory |
|
Do not dereference null pointers |
|
Do not modify objects with temporary lifetime |
|
Do not cast pointers into more strictly aligned pointer types |
|
Call functions with the correct number and type of arguments |
|
Do not access a variable through a pointer of an incompatible type |
|
Do not modify constant objects |
|
Do not compare padding data |
|
Avoid undefined behavior when using restrict-qualified pointers |
|
Do not rely on side effects in operands to sizeof, _Alignof, or _Generic |
|
Do not perform assignments in selection statements |
|
Do not use a bitwise operator with a Boolean-like operand |
|
Do not call va_arg with an argument of the incorrect type |
Options
Setting an option for this rule means setting the default for all nested rules.
This rule shares the following common options: exclude_in_macros, exclude_messages_in_system_headers, excludes, extend_exclude_to_macro_invocations, includes, justification_checker, languages, post_processing, provider, report_at, severity
The following places define options that affect this rule: Stylechecks, Analysis-GlobalOptions
This rule has no individual options.