...
Tool | Version | Checker | Description | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Astrée |
| assignment-conditional | Fully checked | |||||||
| Axivion Bauhaus Suite |
| CertC-EXP45 | ||||||||
| Clang |
| -Wparentheses | Can detect some instances of this rule, but does not detect all | |||||||
| CodeSonar |
| LANG.STRUCT.CONDASSIG LANG.STRUCT.SE.COND LANG.STRUCT.USEASSIGN | Assignment in conditional Condition contains side effects Assignment result in expression | |||||||
| Compass/ROSE | Could detect violations of this recommendation by identifying any assignment expression as the top-level expression in an | |||||||||
| Cppcheck Premium |
| premium-cert-exp45-c | Partially implemented | |||||||
| CC2.EXP18 | Fully implemented | ||||||||
| GCC |
| Can detect violations of this recommendation when the | ||||||||
| Helix QAC |
| C3314, C3326, C3344, C3416 C++4071, C++4074 | ||||||||
| Klocwork |
| ASSIGCOND.CALL | ||||||||
| LDRA tool suite |
| 114 S, 132 S | Enhanced Enforcement | |||||||
| Parasoft C/C++test |
| CERT_C-EXP45-b | Assignment operators shall not be used in conditions without brackets | |||||||
| PC-lint Plus |
| 720 | Partially supported: reports Boolean test of unparenthesized assignment | |||||||
| Polyspace Bug Finder |
| CERT C: Rule EXP45-C | Checks for invalid use of = (assignment) operator (rule fully covered) | |||||||
| PVS-Studio |
| V559, V633, V699 | ||||||||
| RuleChecker |
| assignment-conditional | Fully checked | |||||||
| SonarQube C/C++ Plugin |
| AssignmentInSubExpression |
...