5 layout(location = 7) in vec3 c;
6 layout(LocatioN = 3) in vec4 p;
7 layout(LocatioN = 9) in vec4 q[4]; // ERROR, no array
8 layout(LocatioN = 10) in s r[4]; // ERROR, no struct, ERROR, location overlap
12 layout(shared, column_major) uniform mat4 badm4; // ERROR
13 layout(shared, column_major, row_major) uniform; // default is now shared and row_major
15 layout(std140) uniform Transform { // layout of this block is std140
17 layout(column_major) mat4 M2; // column major
19 centroid float badf; // ERROR
20 in float badg; // ERROR
21 layout(std140) float bad1;
22 layout(shared) float bad2;
23 layout(packed) float bad3;
26 uniform T2 { // layout of this block is shared
31 layout(column_major) uniform T3 { // shared and column_major
32 mat4 M3; // column_major
33 layout(row_major) mat4 M4; // row major
34 mat3 N2; // column_major
35 int b; // ERROR, redefinition (needs to be last member of block for testing, following members are skipped)
42 layout (location = 10) out vec4 badoutA; // ERROR
46 pos = p * (tblock.M1 + tblock.M2 + M4 + M3 + t2m);
47 color = c * tblock.N1;
50 shared vec4 compute_only; // ERROR
52 layout(packed) uniform;
54 layout(packed) uniform float aoeuntaoeu; // ERROR, packed on variable
56 layout(location = 40) in float cd;
57 layout(location = 37) in mat4x3 ce; // ERROR, overlap