...
Tool | Version | Checker | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
Astrée |
| pointer-subtraction | Partially checked | ||||||
Axivion Bauhaus Suite |
| CertC-ARR36 | Can detect operations on pointers that are unrelated | ||||||
CodeSonar |
| LANG.STRUCT.CUP LANG.STRUCT.SUP | Comparison of Unrelated Pointers Subtraction of Unrelated Pointers | ||||||
Coverity |
| MISRA C 2004 17.2 MISRA C 2004 17.3 MISRA C 2012 18.2 MISRA C 2012 18.3 | Implemented | ||||||
Helix QAC |
| C0487, C0513 DF2668, C2668DF2669, C2669DF2761, C2761DF2762, C2762DF2763, C2763DF2766, C2766DF2767, C2767DF2768, C2768DF2771, C2771DF2772, C2772, C2773DF2773 | |||||||
Klocwork |
| MISRA.PTR.ARITH | |||||||
LDRA tool suite |
| 437 S, 438 S | Fully implemented | ||||||
Parasoft C/C++test |
| CERT_C-ARR36-a CERT_C-ARR36-b | Do not subtract two pointers that do not address elements of the same array | ||||||
| Checks for subtraction or comparison between pointers to different arrays (rule partially covered) | ||||||||
PRQA QA-C |
| 0487, 0513, 2668, 2669, 2761, 2762, 2763, 2766, 2767, 2768, 2771, 2772, 2773 | Fully implemented | ||||||
PVS-Studio |
| V736, V782 | |||||||
RuleChecker |
| pointer-subtraction | Partially checked | ||||||
TrustInSoft Analyzer |
| differing_blocks | Exhaustively verified (see the compliant and the non-compliant example). |
...