Main Content

Data Flow Defects

Defects for data flow coding errors, unreachable code, non-initialization, missing return statements, useless writes

These defects are errors relating to how information moves throughout your code. The defects include:

  • Dead or unreachable code

  • Unused code

  • Non-initialized information

Polyspace Results

Code deactivated by constant false conditionCode segment deactivated by #if 0 directive or if(0) condition
Dead codeCode does not execute
Infinite loopLoop termination condition might never be satisfied (Since R2023a)
Missing return statementFunction with non-void return type does not return value on some paths
Non-initialized variableVariable not initialized before use
Non-initialized pointerPointer not initialized before dereference
Partially accessed arrayArray partly read or written before end of scope
Pointer to non-initialized value converted to const pointerPointer to constant assigned address that does not contain a value
Static uncalled functionFunction with static scope not called in file
Unreachable codeCode not executed because of preceding control-flow statements
Useless ifUnnecessary if conditional
Useless preprocessor conditional directivePreprocessor conditional directive is always true or always false (Since R2022a)
Variable shadowingVariable hides another variable of same name with nested scope
Write without a further readVariable never read after assignment

Topics

  • Bug Finder Defect Groups

    The Bug Finder defect checkers are classified into groups such as data flow, concurrency, numerical, and so on.