Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Tool

Version

Checker

Description

Astrée
Include Page
Astrée_V
Astrée_V
array_out_of_bounds

Supported

Astrée reports all out-of-bounds array access.

Axivion Bauhaus Suite

Include Page
Axivion Bauhaus Suite_V
Axivion Bauhaus Suite_V

CertC-DCL38Detects if the final member of struct which is declared as an array of small bound, is used as a flexible array member.
Compass/ROSE



Can detect some violations of this rule. In particular, it warns if the last element of a struct is an array with a small index (0 or 1)

Cppcheck Premium
24.9.0

premium-cert-dcl38-c

Fully implemented

Helix QAC

Include Page
Helix QAC_V
Helix QAC_V

C1037, C1039Fully implemented
Klocwork

Include Page
Klocwork_V
Klocwork_V

CERT.STRUCT.FLEXIBLE_ARRAY_MEMBERFully implemented
LDRA tool suite
 
Include Page
LDRA_V
LDRA_V
648 SFully implemented
Parasoft C/C++test

Include Page
Parasoft_V
Parasoft_V

CERT_C-DCL38-a

The final member of a structure should not be an array of size '0' or '1'
PC-lint Plus

Include Page
PC-lint Plus_V
PC-lint Plus_V

9040

Fully supported

Polyspace Bug Finder

Include Page
Polyspace Bug Finder_V
Polyspace Bug Finder_V

CERT C: Rule DCL38-CChecks for incorrect syntax of flexible array member size (rule fully covered)
TrustInSoft Analyzer

Include Page
TrustInSoft Analyzer_V
TrustInSoft Analyzer_V

index_boundExhaustively detects out-of-bounds array access (see the compliant and the non-compliant example).

Related Vulnerabilities

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

...