1#version 310 es 2 3precision mediump float; 4precision highp int; 5 6int c, d; 7layout(location = 0) in highp float x; 8layout(location = 1) in vec4 bigColor; 9layout(location = 2) in vec4 BaseColor; 10layout(location = 3) in float f; 11 12layout(location = 4) flat in int Count; 13layout(location = 5) flat in uvec4 v4; 14 15layout(location = 0) out vec4 outColor; 16 17void main() 18{ 19 float f; 20 int a[2]; 21 22 switch(c) 23 { 24 } 25 26 switch (c) { // a no-error normal switch 27 case 1: 28 f = sin(x); 29 break; 30 case 2: 31 switch (d) { 32 case 1: 33 f = x * x * x; 34 break; 35 case 2: 36 f = x * x; 37 break; 38 } 39 break; 40 default: 41 f = tan(x); 42 } 43 44 vec4 color = BaseColor; 45 46 for (int i = 0; i < Count; ++i) { 47 color += bigColor; 48 } 49 50 outColor = color; 51 52 float sum = 0.0; 53 for (int i = 0; i < 4; ++i) 54 sum += float(v4[i]); 55 56 vec4 tv4; 57 58 for (int i = 0; i < 4; ++i) 59 tv4[i] = float(v4[i] * 4u); 60 61 outColor += vec4(sum) + tv4; 62 63 vec4 r; 64 r.xyz = BaseColor.xyz; 65 66 for (int i = 0; i < Count; ++i) 67 r.w = f; 68 69 outColor.xyz += r.xyz; 70 71 for (int i = 0; i < 16; i += 4) 72 outColor *= f; 73 74 int i = 0; 75 int A, B, C, D; 76 while (i<10) { 77 A = 1; 78 if (i%2 == 0) { 79 B = 2; 80 continue; 81 C = 2; 82 } 83 if (i%5 == 0) { 84 B = 2; 85 break; 86 C = 2; 87 } 88 i++; 89 } 90 D = 3; 91} 92