Defect analysis

Defect analysis

The defect analysis checks the source code for potential runtime errors. The analyses include scalable data and control flow checks. These allow errors such as out-of-bounds access or division by zero to be detected early.

  • NULL dereferences 
  • uninitialized variables
  • unused definitions
  • escaping addresses of local variables 
  • violations of exception specificationsexc
  • exceptions during stack unwinding
  • uncaught exceptions
  • dead catch blocks
  • memory leaks from new/malloc without delete/free 
  • mismatched resource allocations/releases
  • double free

  • use after free
  • divisions by zero
  • constant conditions
  • array access out of bounds
  • overflow in arithmetic computation
  • comparison/subtraction of unrelated pointers
  • assignment of bad values to enum-typed variables
  • forbidden operations on resources
  • forbidden argument values
  • resources used for reading and writing at the same time

In addition to style violations regarding AUTOSAR C++14, the image also shows two rectified violations of the defect analysis from the period from March to June. FaultDetection-RemovableStatements checks whether a statement or a declaration can be removed because it does not contribute to the function result. FaultDetection-UnusedAssignments checks for assignments to variables that are not being used.

Would you like to try this function? Request your evaluation here.

Request Evaluation