...
Tool | Version | Checker | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
Astrée |
| pointered-deallocation | Fully checked | ||||||
Axivion Bauhaus Suite |
| CertC-DCL30 | Fully implemented | ||||||
CodeSonar |
| LANG.STRUCT.RPL | Returns pointer to local | ||||||
Compass/ROSE | Can detect violations of this rule. It automatically detects returning pointers to local variables. Detecting more general cases, such as examples where static pointers are set to local variables which then go out of scope, would be difficult | ||||||||
| RETURN_LOCAL | Finds many instances where a function will return a pointer to a local stack variable. Coverity Prevent cannot discover all violations of this rule, so further verification is necessary | |||||||
Klocwork |
| LOCRET.RET | |||||||
LDRA tool suite |
| 42 D, 77 D, 71 S, 565 S | Enhanced Enforcement | ||||||
Parasoft C/C++test |
| CERT_C-DCL30-a | The address of an object with automatic storage shall not be returned from a function | ||||||
Polyspace Bug Finder |
| Checks for pointer Pointer or reference to stack variable leaving scope Pointer to local variable leaves the variable scopeThe address of an object with automatic storage shall not be copied to another object that persists after the first object has ceased to exist | |||||||
PRQA QA-C |
| 3217, 3225, 3230, 4140 | Partially implemented | ||||||
PRQA QA-C++ |
| 2515, 2516, 2527, 2528, 4026, 4624, 4629 | |||||||
PVS-Studio |
| V506, V507, V558, V623, V723, V738 | |||||||
Splint |
| ||||||||
TrustInSoft Analyzer |
| dangling_pointer | Exhaustively detects undefined behavior (see one compliant and one non-compliant example). |
...