...
Tool | Version | Checker | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Astrée |
| invalid-free | Fully checked | ||||||||
Clang |
| clang-analyzer-unix.Malloc | Checked by clang-tidy ; can detect some instances of this rule, but does not detect all | ||||||||
CodeSonar |
| ALLOC.FNH | Free non-heap variable | ||||||||
Compass/ROSE | Can detect some violations of this rule | ||||||||||
| BAD_FREE | Identifies calls to | |||||||||
Klocwork |
| ||||||||||
LDRA tool suite |
| 407 S, 483 S, 644 S, 645 S, 125 D | Partially implemented | ||||||||
Parasoft C/C++test |
| BD-RES-INVFREE | Implemented | ||||||||
Parasoft Insure++ | Detect at runtime | ||||||||||
Polyspace Bug Finder |
| Pointer deallocation without a corresponding dynamic allocation A block of memory shall only be freed if it was allocated by means of a Standard Library function | |||||||||
PRQA QA-C | 9.1 | 1769 | |||||||||
PVS-Studio |
| V585, V726 |
...