1*c8dee2aaSAndroid Build Coastguard Worker/*#pragma settings RewriteSwitchStatements*/ 2*c8dee2aaSAndroid Build Coastguard Worker 3*c8dee2aaSAndroid Build Coastguard Workeruniform half4 colorGreen, colorRed; 4*c8dee2aaSAndroid Build Coastguard Worker 5*c8dee2aaSAndroid Build Coastguard Workerhalf4 main(float2 coords) { 6*c8dee2aaSAndroid Build Coastguard Worker bool ok; 7*c8dee2aaSAndroid Build Coastguard Worker 8*c8dee2aaSAndroid Build Coastguard Worker switch (int(colorGreen.g)) { 9*c8dee2aaSAndroid Build Coastguard Worker case 0: bool a; // `a` should be declared above the switch. 10*c8dee2aaSAndroid Build Coastguard Worker case 1: const int ONE = 1; // a const-declaration can also move above the switch safely. 11*c8dee2aaSAndroid Build Coastguard Worker case 2: int b = ONE, c; // declarations for `b` and `c` should be moved upwards; 12*c8dee2aaSAndroid Build Coastguard Worker // an assignment-statement `b = ONE` should be here instead. 13*c8dee2aaSAndroid Build Coastguard Worker case 3: { float d = float(b); c = int(d); } // no changes expected 14*c8dee2aaSAndroid Build Coastguard Worker case 4: a = bool(c); // " " " 15*c8dee2aaSAndroid Build Coastguard Worker case 5: ok = a; // " " " 16*c8dee2aaSAndroid Build Coastguard Worker } 17*c8dee2aaSAndroid Build Coastguard Worker 18*c8dee2aaSAndroid Build Coastguard Worker return ok ? colorGreen : colorRed; 19*c8dee2aaSAndroid Build Coastguard Worker} 20