Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Update CodeSonar entry for CodeSonar 9.1

...

Recommendation

Severity

Likelihood

Detectable

RepairableRemediation Cost

Priority

Level

DCL07-C

Low

Unlikely

Yes

LowNo

P3P2

L3

Automated Detection

Tool

Version

Checker

Description

Astrée
Include Page
Astrée_V
Astrée_V

function-prototype

implicit-function-declaration

Partially checked
Axivion Bauhaus Suite

Include Page
Axivion Bauhaus Suite_V
Axivion Bauhaus Suite_V

CertC-DCL07
CodeSonar
Include Page
CodeSonar_V
CodeSonar_V
LANG.FUNCS.PROT
PARSE.IMPLICIT.IOM
PARSE.MISSING.DS
PARSE.MISSING.TS
PARSE.NONSTD.II
PARSE.PILNFD
PARSE.UNDECLPARAM
Incomplete function prototype
Implicit int on main
Missing Declaration Specifiers
Missing Type Specifier
Nonstandard Implicit Integer
Parameter Identifier List Needs Function Definition
Undeclared Parameter

ECLAIR

Include Page
ECLAIR_V
ECLAIR_V

CC2.DCL07

Fully implemented

GCC
Include Page
GCC_V
GCC_V


Can detect violation of this recommendation when the -Wstrict-prototypes flag is used

Helix QAC

Include Page
Helix QAC_V
Helix QAC_V

C1304, C2050, C3331, C3335, C3408, C3450


Klocwork
Include Page
Klocwork_V
Klocwork_V
MISRA.FUNC.PROT_FORM.KR.2012
MISRA.FUNC.NOPROT.DEF
MISRA.CAST.FUNC_PTR.2012

LDRA tool suite
Include Page
LDRA_V
LDRA_V

21 S
135 S
170 S

Fully implemented

Polyspace Bug FinderR2014b

MISRA C:2012 Rule 8.2

MISRA C:2012 Rule 11.1

Function types shall be in prototype form with named parameters

Conversions shall not be performed between a pointer to a function and any other type

PC-lint Plus

Include Page
PC-lint Plus_V
PC-lint Plus_V

718, 746, 936, 9074

Fully supported

Polyspace Bug Finder

Include Page
Polyspace Bug Finder_V
Polyspace Bug Finder_V

CERT C: Rec. DCL07-C


Checks for:

  • Cast between function pointers with different types
  • Function declared implicitly.

Rec. fully covered.

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

1304

2050

3335

3408
3450

Fully implemented

RuleChecker
Include Page
RuleChecker_V
RuleChecker_V

function-prototype

implicit-function-declaration

Partially checked
SonarQube C/C++ Plugin
Include Page
SonarQube C/C++ Plugin_V
SonarQube C/C++ Plugin_V
S819, S930

...