On huomattava, että jos halutaan suorittaa jokin switch- lauseen osista kahdella eri arvolla, EI voida käyttää rakennetta:
switch (operaatio) { /* VÄÄRIN: */ case 4 | 5: x *= 2; break; /* 5 tai 4 laskee x=2*x */ :-( case 3: x += 2; /* 3 laskee x=x+4 */ case 2: x++; /* 2 laskee x=x+2 */ default: x=0; break; /* Muut nollaavat x:än */ }
Kääntäjä ei tästä varoita, koska kaikki on aivan kieliopin mukaista. 4 | 5 on kahden bittilausekkeen OR eli 5. Siis
case 4 | 8: on sama kuin case 12: