Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Added TrustInSoft Analyzer to the Automated Detection table.

...

Tool

Version

Checker

Description

Astrée
Include Page
Astrée_V
Astrée_V
pointer-subtractionPartially checked
Axivion Bauhaus Suite

Include Page
Axivion Bauhaus Suite_V
Axivion Bauhaus Suite_V

CertC-ARR36Can detect operations on pointers that are unrelated
Coverity
Include Page
Coverity_V
Coverity_V

MISRA C 2004 17.2

MISRA C 2004 17.3

MISRA C 2012 18.2

MISRA C 2012 18.3

Implemented
LDRA tool suite
Include Page
LDRA_V
LDRA_V

437 S, 438 S

Fully implemented

Parasoft C/C++test
Include Page
Parasoft_V
Parasoft_V
CERT_C-ARR36-a

Pointer arithmetic shall only be applied to pointers that address an array or array element

Polyspace Bug Finder

Include Page
Polyspace Bug Finder_V
Polyspace Bug Finder_V

Subtraction or comparison between pointers to different arrays

MISRA C:2012 Rule 18.2

Subtraction or comparison between pointers causes undefined behavior

Subtraction between pointers shall only be applied to pointers that address elements of the same array

PRQA QA-C
Include Page
PRQA QA-C_v
PRQA QA-C_v

0487, 0513, 2668, 2669,
2771, 2772, 2773, 2761,
2762, 2763, 2766, 2767,
2768

Fully implemented
PVS-Studio

Include Page
PVS-Studio_V
PVS-Studio_V

V736, V782
TrustInSoft Analyzer

Include Page
TrustInSoft Analyzer_V
TrustInSoft Analyzer_V

differing_blocks

Exhaustively verified (see the compliant and the non-compliant example).

Related Vulnerabilities

Search for vulnerabilities resulting from the violation of this rule on the CERT website.

...