SKIP: FAILED cbuffer cbuffer_x_6 : register(b0, space0) { uint4 x_6[1]; }; static float4 x_GLF_color = float4(0.0f, 0.0f, 0.0f, 0.0f); void main_1() { int a = 0; a = 0; const int x_26 = asint(x_6[0].x); switch(x_26) { case 2: case 3: { a = 1; /* fallthrough */ } case 4: { break; } default: { a = 2; break; } } if ((a == 2)) { x_GLF_color = float4(1.0f, 0.0f, 0.0f, 1.0f); } else { x_GLF_color = float4(0.0f, 0.0f, 0.0f, 0.0f); } return; } struct main_out { float4 x_GLF_color_1; }; struct tint_symbol { float4 x_GLF_color_1 : SV_Target0; }; tint_symbol main() { main_1(); const main_out tint_symbol_1 = {x_GLF_color}; const tint_symbol tint_symbol_3 = {tint_symbol_1.x_GLF_color_1}; return tint_symbol_3; } C:\src\tint\test\Shader@0x0000025EFE826FC0(11,5): error X3533: non-empty case statements must have break or return C:\src\tint\test\Shader@0x0000025EFE826FC0(15,5): error X3537: Fall-throughs in switch statements are not allowed.