Main Content
Static Memory Defects
Defects for static memory coding errors, out of bounds arrays, null pointers, standard memory and string library
These defects are errors relating to memory usage when the memory is statically allocated. The defects include:
Accessing arrays outside their bounds
Null pointers
Casting of pointers
Polyspace Results
Arithmetic operation with NULL pointer | Arithmetic operation performed on NULL pointer |
Array access out of bounds | Array index outside bounds during array access |
Buffer overflow from incorrect string format specifier | String format specifier causes buffer argument of standard library functions to overflow |
Destination buffer overflow in string manipulation | Function writes to buffer at offset greater than buffer size |
Destination buffer underflow in string manipulation | Function writes to buffer at a negative offset from beginning of buffer |
Invalid use of standard library memory routine | Standard library memory function called with invalid arguments |
Invalid use of standard library string routine | Standard library string function called with invalid arguments |
Move operation on const object | std::move function is called with object declared
const or const& (Since R2020a) |
Null pointer | NULL pointer dereferenced |
Pointer access out of bounds | Pointer dereferenced outside its bounds |
Pointer or reference to stack variable leaving scope | Pointer to local variable leaves the variable scope |
Subtraction or comparison between pointers to different arrays | Subtraction or comparison between pointers causes undefined behavior |
Unreliable cast of function pointer | Function pointer cast to another function pointer with different argument or return type |
Unreliable cast of pointer | Pointer implicitly cast to different data type |
Use of automatic variable as putenv-family function argument | putenv-family function argument not accessible outside its scope |
Use of path manipulation function without maximum sized buffer checking | Destination buffer of getwd or realpath is
smaller than PATH_MAX bytes |
Wrong allocated object size for cast | Allocated memory does not match destination pointer |
Topics
- Bug Finder Defect Groups
The Bug Finder defect checkers are classified into groups such as data flow, concurrency, numerical, and so on.