can detect some violations of this recommendation. In particular, it flags switch statements that do not have a default clause. ROSE should also detect "fake switches," as well (that is, a chain of if statements each checking the value of the same variable). These if statements should always end in an "else" clause, or they should mathematically cover every possibility. For instance, consider the following: Code Block |
---|
|
if (x > 0) {
/* ... */
} else if (x < 0) {
/* ... */
} else if (x == 0) {
/* ... */
}
|
|