/*#pragma settings RewriteSwitchStatements*/ uniform half4 colorGreen, colorRed; bool switch_fallthrough(int value) { bool ok = false; switch (value) { case 2: break; case 1: case 0: ok = true; break; default: break; } return ok; } bool switch_fallthrough_twice(int value) { bool ok = false; switch (value) { case 0: break; case 1: case 2: case 3: ok = true; break; default: break; } return ok; } half4 main(float2 coords) { int x = int(colorGreen.g); return (switch_fallthrough(x) && switch_fallthrough_twice(x)) ? colorGreen : colorRed; }