glslang/Test/baseResults/300layout.vert.out
David Neto 941df35580 fix error message for vertex struct input
Vertex shaders can have pipeline inputs that are arrays, but not structure
inputs. (GLSL 4.5 section 4.3.4)

But the error message for struct inputs says "cannot be a structure or array".
This PR removes the "or array" part.

Note: The array case is handled immediately after the check for
structure type.

Co-authored-by: Arcady Goldmints-Orlov <arcady@lunarg.com>
2023-12-11 20:03:15 +00:00

149 lines
14 KiB
Plaintext

300layout.vert
ERROR: 0:7: 'vertex input arrays' : not supported with this profile: es
ERROR: 0:8: 'in' : cannot be a structure
ERROR: 0:8: 's' : A structure containing an array is not allowed as input in ES
ERROR: 0:8: 'vertex input arrays' : not supported with this profile: es
ERROR: 0:8: 'location' : overlapping use of location 10
ERROR: 0:12: 'layout' : cannot specify matrix layout on a variable declaration
ERROR: 0:12: 'layout' : cannot specify packing on a variable declaration
ERROR: 0:19: 'badf' : member of uniform or buffer block cannot have an auxiliary or interpolation qualifier
ERROR: 0:20: 'badg' : member storage qualifier cannot contradict block storage qualifier
ERROR: 0:21: 'bad1' : member of block cannot have a packing layout qualifier
ERROR: 0:22: 'bad2' : member of block cannot have a packing layout qualifier
ERROR: 0:23: 'bad3' : member of block cannot have a packing layout qualifier
ERROR: 0:31: 'T3' : nameless block contains a member that already has a name at global scope
ERROR: 0:38: 'vertex output block' : not supported for this version or the enabled extensions
ERROR: 0:42: 'location qualifier on output' : not supported in this stage: vertex
ERROR: 0:42: 'location qualifier on output' : not supported for this version or the enabled extensions
ERROR: 0:50: 'shared' : not supported for this version or the enabled extensions
ERROR: 0:50: 'shared' : not supported in this stage: vertex
ERROR: 0:54: 'layout' : cannot specify packing on a variable declaration
ERROR: 0:57: 'location' : overlapping use of location 40
ERROR: 20 compilation errors. No code generated.
Shader version: 300
ERROR: node is still EOpNull!
0:44 Function Definition: main( ( global void)
0:44 Function Parameters:
0:46 Sequence
0:46 move second child to first child ( temp highp 4-component vector of float)
0:46 'pos' ( smooth out highp 4-component vector of float)
0:46 vector-times-matrix ( temp highp 4-component vector of float)
0:46 'p' (layout( location=3) in highp 4-component vector of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 M1: direct index for structure (layout( row_major std140 offset=0) uniform highp 4X4 matrix of float)
0:46 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:46 Constant:
0:46 0 (const int)
0:46 M2: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float)
0:46 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:46 Constant:
0:46 1 (const int)
0:46 M4: direct index for structure (layout( row_major shared) uniform highp 4X4 matrix of float)
0:46 'anon@1' (layout( column_major shared) uniform block{layout( column_major shared) uniform highp 4X4 matrix of float M3, layout( row_major shared) uniform highp 4X4 matrix of float M4, layout( column_major shared) uniform highp 3X3 matrix of float N2, layout( column_major shared) uniform highp int b})
0:46 Constant:
0:46 1 (const uint)
0:46 M3: direct index for structure (layout( column_major shared) uniform highp 4X4 matrix of float)
0:46 'anon@1' (layout( column_major shared) uniform block{layout( column_major shared) uniform highp 4X4 matrix of float M3, layout( row_major shared) uniform highp 4X4 matrix of float M4, layout( column_major shared) uniform highp 3X3 matrix of float N2, layout( column_major shared) uniform highp int b})
0:46 Constant:
0:46 0 (const uint)
0:46 t2m: direct index for structure (layout( row_major shared) uniform highp 4X4 matrix of float)
0:46 'anon@0' (layout( row_major shared) uniform block{layout( row_major shared) uniform bool b, layout( row_major shared) uniform highp 4X4 matrix of float t2m})
0:46 Constant:
0:46 1 (const uint)
0:47 move second child to first child ( temp highp 3-component vector of float)
0:47 'color' ( smooth out highp 3-component vector of float)
0:47 vector-times-matrix ( temp highp 3-component vector of float)
0:47 'c' (layout( location=7) in highp 3-component vector of float)
0:47 N1: direct index for structure (layout( row_major std140 offset=128) uniform highp 3X3 matrix of float)
0:47 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:47 Constant:
0:47 2 (const int)
0:? Linker Objects
0:? 'c' (layout( location=7) in highp 3-component vector of float)
0:? 'p' (layout( location=3) in highp 4-component vector of float)
0:? 'q' (layout( location=9) in 4-element array of highp 4-component vector of float)
0:? 'r' (layout( location=10) in 4-element array of structure{ global highp 4-component vector of float v})
0:? 'pos' ( smooth out highp 4-component vector of float)
0:? 'color' ( smooth out highp 3-component vector of float)
0:? 'badm4' (layout( column_major shared) uniform highp 4X4 matrix of float)
0:? 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:? 'anon@0' (layout( row_major shared) uniform block{layout( row_major shared) uniform bool b, layout( row_major shared) uniform highp 4X4 matrix of float t2m})
0:? 'anon@2' ( out block{ out highp float f})
0:? 'badoutA' (layout( location=10) smooth out highp 4-component vector of float)
0:? 'compute_only' ( shared highp 4-component vector of float)
0:? 'aoeuntaoeu' (layout( packed) uniform highp float)
0:? 'cd' (layout( location=40) in highp float)
0:? 'ce' (layout( location=37) in highp 4X3 matrix of float)
0:? 'gl_VertexID' ( gl_VertexId highp int VertexId)
0:? 'gl_InstanceID' ( gl_InstanceId highp int InstanceId)
Linked vertex stage:
Shader version: 300
ERROR: node is still EOpNull!
0:44 Function Definition: main( ( global void)
0:44 Function Parameters:
0:46 Sequence
0:46 move second child to first child ( temp highp 4-component vector of float)
0:46 'pos' ( smooth out highp 4-component vector of float)
0:46 vector-times-matrix ( temp highp 4-component vector of float)
0:46 'p' (layout( location=3) in highp 4-component vector of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 add ( temp highp 4X4 matrix of float)
0:46 M1: direct index for structure (layout( row_major std140 offset=0) uniform highp 4X4 matrix of float)
0:46 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:46 Constant:
0:46 0 (const int)
0:46 M2: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float)
0:46 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:46 Constant:
0:46 1 (const int)
0:46 M4: direct index for structure (layout( row_major shared) uniform highp 4X4 matrix of float)
0:46 'anon@1' (layout( column_major shared) uniform block{layout( column_major shared) uniform highp 4X4 matrix of float M3, layout( row_major shared) uniform highp 4X4 matrix of float M4, layout( column_major shared) uniform highp 3X3 matrix of float N2, layout( column_major shared) uniform highp int b})
0:46 Constant:
0:46 1 (const uint)
0:46 M3: direct index for structure (layout( column_major shared) uniform highp 4X4 matrix of float)
0:46 'anon@1' (layout( column_major shared) uniform block{layout( column_major shared) uniform highp 4X4 matrix of float M3, layout( row_major shared) uniform highp 4X4 matrix of float M4, layout( column_major shared) uniform highp 3X3 matrix of float N2, layout( column_major shared) uniform highp int b})
0:46 Constant:
0:46 0 (const uint)
0:46 t2m: direct index for structure (layout( row_major shared) uniform highp 4X4 matrix of float)
0:46 'anon@0' (layout( row_major shared) uniform block{layout( row_major shared) uniform bool b, layout( row_major shared) uniform highp 4X4 matrix of float t2m})
0:46 Constant:
0:46 1 (const uint)
0:47 move second child to first child ( temp highp 3-component vector of float)
0:47 'color' ( smooth out highp 3-component vector of float)
0:47 vector-times-matrix ( temp highp 3-component vector of float)
0:47 'c' (layout( location=7) in highp 3-component vector of float)
0:47 N1: direct index for structure (layout( row_major std140 offset=128) uniform highp 3X3 matrix of float)
0:47 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:47 Constant:
0:47 2 (const int)
0:? Linker Objects
0:? 'c' (layout( location=7) in highp 3-component vector of float)
0:? 'p' (layout( location=3) in highp 4-component vector of float)
0:? 'q' (layout( location=9) in 4-element array of highp 4-component vector of float)
0:? 'r' (layout( location=10) in 4-element array of structure{ global highp 4-component vector of float v})
0:? 'pos' ( smooth out highp 4-component vector of float)
0:? 'color' ( smooth out highp 3-component vector of float)
0:? 'badm4' (layout( column_major shared) uniform highp 4X4 matrix of float)
0:? 'tblock' (layout( row_major std140) uniform block{layout( row_major std140 offset=0) uniform highp 4X4 matrix of float M1, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float M2, layout( row_major std140 offset=128) uniform highp 3X3 matrix of float N1, layout( row_major std140 offset=176) centroid uniform highp float badf, layout( row_major std140 offset=180) uniform highp float badg, layout( row_major std140 offset=184) uniform highp float bad1, layout( row_major shared offset=188) uniform highp float bad2, layout( row_major packed offset=192) uniform highp float bad3})
0:? 'anon@0' (layout( row_major shared) uniform block{layout( row_major shared) uniform bool b, layout( row_major shared) uniform highp 4X4 matrix of float t2m})
0:? 'anon@2' ( out block{ out highp float f})
0:? 'badoutA' (layout( location=10) smooth out highp 4-component vector of float)
0:? 'compute_only' ( shared highp 4-component vector of float)
0:? 'aoeuntaoeu' (layout( packed) uniform highp float)
0:? 'cd' (layout( location=40) in highp float)
0:? 'ce' (layout( location=37) in highp 4X3 matrix of float)
0:? 'gl_VertexID' ( gl_VertexId highp int VertexId)
0:? 'gl_InstanceID' ( gl_InstanceId highp int InstanceId)