07-08-2009, 04:21 PM
I would be interested in comments on the following simplified fragment.
switch (err) {
case 0:
...
break;
case 1:
case 2:
case 3:
default:
...
break;
}
I am seeing code examples like this where multiple cases are being combined with default. Most compiler will simply optimize this out to a simple test for case 0. The programmers are using this as a way to identify the results they might expect. I think having the other cases in a comment would serve this as well. MISRA C does not seem to mention this.
From a test perspective I feel it is necessary to test all declared cases.
Can anyone offer a comment on this?
Scott
Validated Software
switch (err) {
case 0:
...
break;
case 1:
case 2:
case 3:
default:
...
break;
}
I am seeing code examples like this where multiple cases are being combined with default. Most compiler will simply optimize this out to a simple test for case 0. The programmers are using this as a way to identify the results they might expect. I think having the other cases in a comment would serve this as well. MISRA C does not seem to mention this.
From a test perspective I feel it is necessary to test all declared cases.
Can anyone offer a comment on this?
Scott
Validated Software
<t></t>