...
Tool | Version | Checker | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
Astrée |
| pointer-integral-cast pointer-integral-cast-implicit function-pointer-integer-cast function-pointer-integer-cast-implicit | Fully checked | ||||||
Axivion Bauhaus Suite |
| CertC-INT36 | Fully implemented | ||||||
Clang |
| -Wint-to-pointer-cast , -Wint-conversion | Can detect some instances of this rule, but does not detect all | ||||||
CodeSonar |
| LANG.CAST.PC.CONST2PTR LANG.CAST.PC.INT | Conversion: integer constant to pointer Conversion: pointer/integer | ||||||
Compass/ROSE | |||||||||
Coverity |
| PW.POINTER_CONVERSION_LOSES_BITS | Fully implemented | ||||||
Klocwork |
| MISRA.CAST.OBJ_PTR_TO_INT.2012 | |||||||
LDRA tool suite |
| 439 S, 440 S | Fully implemented | ||||||
Parasoft C/C++test |
| CERT_C-INT36-a | An object with integer type or pointer to void type shall not be converted to an object with pointer type | ||||||
Polyspace Bug Finder |
| Misaligned or invalid results from conversions between pointer and integer types A cast shall not be performed between pointer to void and an arithmetic type | |||||||
PRQA QA-C |
| 0303, 0305, 0306, 0309, 0324, 0326, 0360, 0361, 0362 | Partially implemented | ||||||
PRQA QA-C++ |
| 3040, 3041, 3042, 3043, 3044, 3045, 3046, 3047, 3048 | |||||||
PVS-Studio |
| V542, V566, V647 | |||||||
RuleChecker |
| pointer-integral-cast pointer-integral-cast-implicit function-pointer-integer-cast function-pointer-integer-cast-implicit | Fully checked | ||||||
SonarQube C/C++ Plugin |
| S1767 | Partially implemented |
...