...
Accessing objects or functions underlying the specific macros enumerated in this rule is undefined behavior.
Rule | Severity | Likelihood | Detectable | RepairableRemediation Cost | Priority | Level |
|---|---|---|---|---|---|---|
MSC38-C | Low | Unlikely | Yes | NoMedium | P2 | L3 |
Automated Detection
| Tool | Version | Checker | Description | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Astrée |
| Supported, but no explicit checker | |||||||
| CodeSonar |
| BADMACRO.STDARG_H | Use of <stdarg.h> Feature | ||||||
| Cppcheck Premium |
| premium-cert-msc38-c | |||||||
| Helix QAC |
| C3437, C3475 C++3127, C++5039 | |||||||
| Parasoft C/C++test |
| CERT_C-MSC38-a | A function-like macro shall not be invoked without all of its arguments | ||||||
| CERT C: Rule MSC38-C | Checks for predefined macro used as an object (rule fully covered) | |||||||
| RuleChecker |
| Supported, but no explicit checker |
...