...
Note that adding a default case to a switch
statement, even when all possible switch
labels are specified, is an exception (MSC07-C-EX1) to MSC07-C. Detect and remove dead code.
...
Tool | Version | Checker | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
Can detect some violations of this recommendation. In particular, it flags switch statements that do not have a default clause. ROSE should detect "fake switches" as well (that is, a chain of if (x > 0) { /* ... */ } else if (x < 0) { /* ... */ } else if (x == 0) { /* ... */ } | |||||||||
GCC |
| Can detect some violations of this recommendation when the | |||||||
Klocwork |
| LA_UNUSED | |||||||
| 48 S, 59 S | Fully implemented | |||||||
Parasoft C/C++test | 9.5 | MISRA2012-RULE-15_7, MISRA2004-15_3 | |||||||
PRQA QA-C |
| 0597 2000 | Fully implemented | ||||||
SonarQube C/C++ Plugin |
| ElseIfWithoutElse SwitchWithoutDefault | Fully implemented |
...