| uniform half4 colorGreen, colorRed; |
| |
| bool switch_with_break_in_loop(int x) { |
| int val = 0; |
| switch (x) { |
| case 1: for (int i=0; i<10; ++i) { ++val; break; ++val; } |
| default: ++val; |
| } |
| return val == 2; |
| } |
| |
| bool switch_with_continue_in_loop(int x) { |
| int val = 0; |
| switch (x) { |
| case 1: for (int i=0; i<10; ++i) { ++val; continue; ++val; } |
| default: ++val; |
| } |
| return val == 11; |
| } |
| |
| bool loop_with_break_in_switch(int x) { |
| int val = 0; |
| for (int i=0; i<10; ++i) { |
| switch (x) { |
| case 1: ++val; break; |
| default: return false; |
| } |
| ++val; |
| } |
| return val == 20; |
| } |
| |
| half4 main(float2 coords) { |
| int x = int(colorGreen.g); |
| return (switch_with_break_in_loop(x) && |
| switch_with_continue_in_loop(x) && |
| loop_with_break_in_switch(x)) ? colorGreen : colorRed; |
| } |