yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
c674299d
main
1#version 420 core 2 3layout (binding = 0 )uniform atomic_uint counter ; 4layout (binding = 0 ,offset = 9 )uniform atomic_uint counter ; 5 6uint func (atomic_uint c ) 7{ 8return atomicCounterIncrement (c ); 9} 10 11uint func2 (out atomic_uint c )// ERROR 12{ 13return counter ;// ERROR, type mismatch 14return atomicCounter (counter ); 15} 16 17void main () 18{ 19atomic_uint non_uniform_counter ;// ERROR 20uint val = atomicCounter (counter ); 21atomicCounterDecrement (counter ); 22} 23 24layout (binding = 1 ,offset = 3 )uniform atomic_uint countArr [4 ]; 25uniform int i ; 26 27void opac () 28{ 29counter + counter ;// ERROR 30- counter ;// ERROR 31int a [3 ]; 32a [counter ];// ERROR 33countArr [2 ]; 34countArr [i ]; 35counter = 4 ;// ERROR 36} 37 38in atomic_uint acin ;// ERROR 39atomic_uint acg ;// ERROR 40uniform atomic_uint ; 41uniform atomic_uint aNoBind; // ERROR, no binding 42layout (binding = 0 , offset = 32 ) uniform atomic_uint aOffset; 43layout (binding = 0 , offset = 4 ) uniform atomic_uint ; 44layout (binding = 0 ) uniform atomic_uint bar3; // offset is 4 45layout (binding = 0 ) uniform atomic_uint ac[ 2 ]; // offset = 8 46layout (binding = 0 ) uniform atomic_uint ad; // offset = 20 47layout (offset = 8 ) uniform atomic_uint bar4; // ERROR, no binding 48layout (binding = 0 , offset = 12 ) uniform atomic_uint overlap; // ERROR, overlapping offsets 49layout (binding = 20 ) uniform atomic_uint bigBind; // ERROR, binding too big