1#version 420 core 2 3layout(depth_any) out float gl_FragDepth; 4layout(depth_greater) out float gl_FragDepth; // ERROR: redeclaration with different qualifier 5 6void main() 7{ 8 gl_FragDepth = 0.3; 9} 10 11layout(depth_less) in float depth; // ERROR: depth_less only applies to gl_FragDepth 12layout(depth_any) out float gl_FragDepth; // ERROR, done after use 13 14layout(binding=0) uniform atomic_uint a[]; 15 16uniform writeonly image2D i2D; 17ivec2 iv2dim = imageSize(i2D); // ERROR: imageSize called without enabling GL_ARB_shader_image_size extension 18#extension GL_ARB_shader_image_size : enable 19ivec2 iv2dim1 = imageSize(i2D); 20 21#extension GL_ARB_shader_storage_buffer_object : enable 22 23layout(binding = 0,std430) buffer Buffer 24{ 25 int atomi; 26 uint atomu; 27}; 28 29void atomicOpPass() 30{ 31 int origi = atomicAdd(atomi, 3); 32 uint origu = atomicAnd(atomu, 7u); 33 origi = atomicExchange(atomi, 4); 34 origu = atomicCompSwap(atomu, 10u, 8u); 35} 36 37layout(binding = 2,std430) buffer ssboElem01 38{ 39 int member01; 40 int memberArr01[2]; 41 int memberUnsizedArr01[]; 42} ssboStd430Arr[2]; 43 44// if turns on EShReflectionSharedStd140SSBO, SPIR-V would be different 45layout(binding = 3,shared) buffer ssboElem02 46{ 47 int member02; 48 int memberArr02[2]; 49 int memberUnsizedArr02[]; 50} ssboSharedArr[2]; 51 52#extension GL_ARB_shader_storage_buffer_object : disable 53 54layout(binding = 1,std430) buffer BufferFail // Error std430 and "buffer" block support disabled 55{ 56 int atom1i; 57}; 58