123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #version 450 core
- out gl_PerVertex {
- float gl_CullDistance[3];
- };
- void main()
- {
- gl_CullDistance[2] = 4.5;
- }
- out bool outb; // ERROR
- out sampler2D outo; // ERROR
- out float outa[4];
- out float outaa[4][2];
- struct S { float f; };
- out S outs;
- out S[4] outasa;
- out S outsa[4];
- struct SA { float f[4]; };
- out SA outSA;
- struct SS { float f; S s; };
- out SS outSS;
- layout(binding = 0) uniform atomic_uint aui;
- uint ui;
- void foo()
- {
- SS::f;
- atomicCounterAdd(aui, ui); // ERROR, need 4.6
- atomicCounterSubtract(aui, ui); // ERROR, need 4.6
- atomicCounterMin(aui, ui); // ERROR, need 4.6
- atomicCounterMax(aui, ui); // ERROR, need 4.6
- atomicCounterAnd(aui, ui); // ERROR, need 4.6
- atomicCounterOr(aui, ui); // ERROR, need 4.6
- atomicCounterXor(aui, ui); // ERROR, need 4.6
- atomicCounterExchange(aui, ui); // ERROR, need 4.6
- atomicCounterCompSwap(aui, ui, ui); // ERROR, need 4.6
- int a = gl_BaseVertex + gl_BaseInstance + gl_DrawID; // ERROR, need 4.6
- bool b1;
- anyInvocation(b1); // ERROR, need 4.6
- allInvocations(b1); // ERROR, need 4.6
- allInvocationsEqual(b1); // ERROR, need 4.6
- }
- ; // ERROR: no extraneous semicolons
- layout(location = 0) uniform locBlock { // ERROR, no location uniform block
- int a;
- };
- layout(location = 0) buffer locBuffBlock { // ERROR, no location on buffer block
- int b;
- };
|