...
Nonunique identifiers can lead to abnormal program termination, denial-of-service attacks, or unintended information disclosure.
Rule | Severity | Likelihood | Remediation Cost | Priority | Level |
---|---|---|---|---|---|
DCL23-C | Medium | Unlikely | Low | P6 | L2 |
Automated Detection
Tool | Version | Checker | Description | ||||
---|---|---|---|---|---|---|---|
Astrée |
|
Supported, but no explicit checker | |||||||||
CodeSonar |
| LANG.ID.ND.EXT LANG.ID.NU.EXT LANG.STRUCT.DECL.MGT | Non-distinct identifiers: external names Non-unique identifiers: external name Global variable declared with different types | ||||||
Compass/ROSE |
Can detect some violations of this rule but cannot flag violations involving universal names | ||||||||
Klocwork |
| MISRA.IDENT.DISTINCT.C99.2012 |
LDRA tool suite |
| 17 D | Fully implemented | ||||||
PRQA QA-C |
| 627, 776, 0777, 778, 0779 | Partially implemented | ||||||
SonarQube C/C++ Plugin |
| IdentifierLongerThan31 |
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
Related Guidelines
ISO/IEC TR 24772:2013 | Choice of Clear Names [NAI] Identifier Name Reuse [YOW] |
MISRA C:2012 | Rule 5.1 (required) |
Bibliography
[ISO/IEC 9899:2011] | Subclause 6.2.7, "Compatible Type and Composite Type" |
...
...