4 float gl_CullDistance[3];
\r
9 gl_CullDistance[2] = 4.5;
\r
12 out bool outb; // ERROR
\r
13 out sampler2D outo; // ERROR
\r
15 out float outaa[4][2];
\r
16 struct S { float f; };
\r
20 struct SA { float f[4]; };
\r
22 struct SS { float f; S s; };
\r
25 layout(binding = 0) uniform atomic_uint aui;
\r
31 atomicCounterAdd(aui, ui); // ERROR, need 4.6
\r
32 atomicCounterSubtract(aui, ui); // ERROR, need 4.6
\r
33 atomicCounterMin(aui, ui); // ERROR, need 4.6
\r
34 atomicCounterMax(aui, ui); // ERROR, need 4.6
\r
35 atomicCounterAnd(aui, ui); // ERROR, need 4.6
\r
36 atomicCounterOr(aui, ui); // ERROR, need 4.6
\r
37 atomicCounterXor(aui, ui); // ERROR, need 4.6
\r
38 atomicCounterExchange(aui, ui); // ERROR, need 4.6
\r
39 atomicCounterCompSwap(aui, ui, ui); // ERROR, need 4.6
\r
41 int a = gl_BaseVertex + gl_BaseInstance + gl_DrawID; // ERROR, need 4.6
\r
44 anyInvocation(b1); // ERROR, need 4.6
\r
45 allInvocations(b1); // ERROR, need 4.6
\r
46 allInvocationsEqual(b1); // ERROR, need 4.6
\r
48 ; // ERROR: no extraneous semicolons
\r
50 layout(location = 0) uniform locBlock { // ERROR, no location uniform block
\r
54 layout(location = 0) buffer locBuffBlock { // ERROR, no location on buffer block
\r