1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- #version 100
- int ga, gb;
- float f;
- uniform sampler2D fsa[3];
- uniform float fua[10];
- attribute mat3 am3;
- attribute vec2 av2;
- varying vec4 va[4];
- const mat2 m2 = mat2(1.0);
- const vec3 v3 = vec3(2.0);
- void foo(inout float a) {}
- int bar()
- {
- return 1;
- }
- void main()
- {
- while (ga < gb) { }
- do { } while (false);
- for ( ; ; ); // ERROR
- for ( ; ga==gb; ); // ERROR
- for ( ; ; f++); // ERROR
- for ( ga = 0; ; ); // ERROR
- for ( bool a = false; ; ); // ERROR
- for (float a = 0.0; a == sin(f); ); // ERROR
- for ( int a = 0; a < 10; a *= 2); // ERROR
- for ( int a = 0; a <= 20; a++) --a; // ERROR
- for ( int a = 0; a <= 20; a++) { if (ga==0) a = 4; } // ERROR
- for (float a = 0.0; a <= 20.0; a += 2.0);
- for (float a = 0.0; a != 20.0; a -= 2.0) { if (ga==0) ga = 4; }
- for (float a = 0.0; a == 20.0; a--) for (float a = 0.0; a == 20.0; a--); // two different 'a's, everything okay
- for (float a = 0.0; a <= 20.0; a += 2.0);
- for (float a = 0.0; a <= 20.0; a += 2.0);
- for (float a = 0.0; a > 2.0 * 20.0; a += v3.y);
- for (float a = 0.0; a >= 20.0; a += 2.0) foo(a); // ERROR
- int ia[9];
- fsa[ga]; // ERROR
- fua[ga];
- am3[ga]; // ERROR
- av2[ga]; // ERROR
- va[2+ga]; // ERROR
- m2[ga]; // ERROR
- v3[ga/2]; // ERROR
- ia[ga]; // ERROR
- for (int a = 3; a >= 0; a--) {
- fsa[a];
- fua[a+2];
- am3[3*a];
- av2[3*a];
- va[a-1];
- m2[a/2];
- v3[a];
- ia[a];
- ia[bar()]; // ERROR
- }
- fsa[2];
- fua[3];
- am3[2];
- av2[1];
- va[1];
- m2[1];
- v3[1];
- ia[3];
- }
|