
Recommendations
DCL00-A. Declare immutable values using const or enum
DCL01-A. Do not reuse variable names in sub-scopes
DCL02-A. Use visually distinct identifiers
DCL03-A. Place const as the rightmost declaration specifier
DCL04-A. Declare no more than one variable per line
DCL05-A. Use typedefs to improve code readability
DCL06-A. Use meaningful symbolic constants to represent literal values
DCL07-A. Do not use identifiers with different linked classifications
DCL08-A. Declare function pointers using compatible types
DCL09-A. Declare functions that return an errno with a return type of errno_t
Rules
DCL30-C. Do not refer to an object outside of its lifetime
DCL31-C. Ensure every function has a function prototype
DCL32-C. Guarantee identifiers are unique
DCL34-C. Use volatile for data that should not be cached
DCL35-C. Do not convert a function pointer to a function of a different type
Risk Assessment Summary
Recommendations
Recommendation |
Severity |
Likelihood |
Remediation Cost |
Priority |
Level |
---|---|---|---|---|---|
DCL00-A |
1 (low) |
1 (unlikely) |
2 (medium) |
P2 |
L3 |
DCL01-A |
1 (low) |
1 (unlikely) |
2 (medium) |
P2 |
L3 |
DCL02-A |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
DCL03-A |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
DCL04-A |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
DCL05-A |
1 (low) |
1 (low) |
2 (medium) |
P2 |
L3 |
DCL06-A |
1 (low) |
1(unlikely) |
2 (medium) |
P2 |
L3 |
DCL07-A |
1 (low) |
2 (probable) |
3 (low) |
P6 |
L2 |
DCL08-A |
2 (medium) |
1 (low) |
1 (high) |
P2 |
L3 |
Rules
Rule |
Severity |
Likelihood |
Remediation Cost |
Priority |
Level |
---|---|---|---|---|---|
DCL30-C |
3 (high) |
2 (probable) |
1 (high) |
P6 |
L2 |
DCL31-C. |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
DCL32-C |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
DCL33-C |
2 (medium) |
2 (probable) |
3 (low) |
P12 |
L1 |
DCL34-C |
2 (medium) |
2 (probable) |
3 (low) |
P12 |
L1 |
DCL35-C |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |