...
| Tool | Version | Checker | Description | |||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Astrée |
| null-dereferencing | Fully checked | |||||||
| Axivion Bauhaus Suite |
| CertC-EXP34 | ||||||||
| CodeSonar |
| LANG.MEM.NPD | Null pointer dereference | |||||||
| Compass/ROSE | Can detect violations of this rule. In particular, ROSE ensures that any pointer returned by | |||||||||
| CHECKED_RETURN NULL_RETURNS REVERSE_INULL FORWARD_NULL | Finds instances where a pointer is checked against Identifies functions that can return a null pointer but are not checked Identifies code that dereferences a pointer and then checks the pointer against Can find the instances where | ||||||||
| Cppcheck |
| nullPointer, nullPointerDefaultArg, nullPointerRedundantCheck | Context sensitive analysis Detects when NULL is dereferenced (Array of pointers is not checked. Pointer members in structs are not checked.) Finds instances where a pointer is checked against Identifies code that dereferences a pointer and then checks the pointer against Does not guess that return values from | |||||||
| Helix QAC |
| DF2810, DF2811, DF2812, DF2813 | Fully implemented | |||||||
| Klocwork |
| NPD.CHECK.CALL.MIGHT | Fully implemented | |||||||
| LDRA tool suite |
| 45 D, 123 D, 128 D, 129 D, 130 D, 131 D, 652 S | Fully implemented | |||||||
| Parasoft C/C++test |
| CERT_C-EXP34-a | Avoid null pointer dereferencing | |||||||
| Parasoft Insure++ | Runtime analysis | |||||||||
| PC-lint Plus |
| 413, 418, 444, 613, 668 | Partially supported | |||||||
| Polyspace Bug Finder |
| Checks for use of null pointers (rule partially covered) | ||||||||
| PVS-Studio |
| V522, V595, V664, V713, V1004 | ||||||||
| SonarQube C/C++ Plugin |
| S2259 | ||||||||
| Splint |
| |||||||||
| TrustInSoft Analyzer |
| mem_access | Exhaustively verified (see one compliant and one non-compliant example). |
...