 
                            ...
Incorrect use of relational and equality operators can lead to incorrect control flow.
| Rule | Severity | Likelihood | Detectable | RepairableRemediation Cost | Priority | Level | 
|---|---|---|---|---|---|---|
| EXP13-C | Low | Unlikely | Yes | MediumYes | P2P3 | L3 | 
Automated Detection
| Tool | Version | Checker | Description | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Astrée | 
 | chained-comparison | Fully checked | |||||||||||||||||||||
| 
 | CC2.EXP13 | Fully implemented | ||||||||||||||||||||||
| GCC | 
 | Option  | ||||||||||||||||||||||
| Helix QAC | 
 | C3392, C3401, C4111, C4112, C4113 | ||||||||||||||||||||||
| LDRA tool suite | 
 | 433 S | Fully implemented | |||||||||||||||||||||
| PC-lint Plus | 
 | 503, 731 | Fully supported | |||||||||||||||||||||
| Polyspace Bug Finder | 
 | R2016a | 
 | CERT C: Rec. EXP13-C | Checks for possibly Possibly unintended evaluation of expression because of operator precedence rules | PRQA QA-COperator precedence rules cause unexpected evaluation order in arithmetic expression | (rec. fully covered) | |||||||||||||||||
| PVS-Studio | PRQA QA
 | C
 | v
 | PRQA QA
 | C
 | v
 | 3392
 | V709 | ||||||||||||||||
| 3401 RuleChecker 4111 | 
 4113 | Fully implemented | 
 | chained-comparison | Fully checked | PVS-Studio | 6.22 | V709 | General analysis rule | 
Related Guidelines
| SEI CERT C++ Coding Standard | VOID EXP17-CPP. Treat relational and equality operators as if they were nonassociative | 
...