yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
9f2f5777
main
1#version 450 2 3#extension GL_EXT_buffer_reference : enable 4 5layout (buffer_reference )buffer bufType1 {int x ; }; 6layout (buffer_reference )buffer bufType2 {int x ; }; 7layout (buffer_reference )uniform bufType3 {int x ; }; 8 9layout (buffer_reference )buffer ; 10layout (buffer_reference )uniform ; 11layout (buffer_reference )in ; 12layout (buffer_reference )out ; 13layout (buffer_reference )in badin {float x ; }badin2 ; 14layout (buffer_reference )out badout {float x ; }badout2 ; 15 16layout (buffer_reference )buffer bufType5 ; 17 18layout (buffer_reference) buffer bufType6 { int x []; }; 19 20layout (buffer_reference, std140, buffer_reference_align = 16 ) buffer bufType7 ; 21layout (buffer_reference) buffer bufType7 { int x []; }; 22 23buffer bufType4 { 24bufType1 b1 ; 25bufType2 b2 ; 26bufType3 b3 ; 27bufType6 b6 ; 28bufType7 b7 ; 29} b4; 30 31void f() 32{ 33bufType6 b; 34b. x . length (); 35b4. b6 . x . length (); 36b[ 2 ]; // ERROR, can't index due to unsized array 37} 38 39void main() { 40bufType2 x1 = b4. b1 ; 41bufType2 x2 = bufType2(b4. b1 ); 42bufType2 x3 = bufType2(b4. b2 ); 43bufType2 x4 = bufType2(b4. b3 ); 44 45b4. b1 = b4. b2 ; 46b4. b1 = b4. b3 ; 47b4. b3 = b4. b2 ; 48} 49 50layout (buffer_reference) uniform bufType5 { int x ; };