...
Tool | Version | Checker | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
Compass/ROSE |
|
| Could detect violations of this recommendation by searching for the following pattern:
| ||||||
| EVALUATION_ORDER | Can detect the specific instance where a statement contains multiple side effects on the same value with an undefined evaluation order because the statement may behave differently with different compiler flags or different compilers or platforms. | |||||||
| 35 D | Fully implemented. | |||||||
PRQA QA-C |
| 3226 | Partially implemented. |
...
CERT C++ Secure Coding Standard | EXP10-CPP. Do not depend on the order of evaluation of subexpressions or the order in which side effects take place |
---|---|
ISO/IEC TR 24772 | Operator precedence/order of evaluation [JCW] and Side-effects and order of evaluation [SAM] |
MISRA-C | Rule 12.2 (required): The value of an expression shall be the same under any order of evaluation that the standard permits |
Bibliography
[ISO/IEC 9899:2011] | Section 6.5, "Expressions," Section 6.5.16, "Assignment Operators," Section 6.5.2.2, "Function Calls," and Section 6.7.9, "Initialization" |
---|
...