mirror of
https://github.com/RPCS3/glslang.git
synced 2024-11-24 19:59:40 +00:00
af459216a1
This is a replacement commit for pull request #238. This is a design change, followed by implementation change that A) fixes the changes caused by the design change, and B) fixes some cases that were originally incorrect. The design change is to not give built-in functions default precision qualification. This is to allow the rule that the precision of some built-in functions adopt their precision qualification from the calling arguments. This is A above. A consequence of this design change is that all built-ins that are supposed to have an explicit precision qualifier must now be declared that way. So, a lot more built-in declarations now have precision qualifiers, just to keep things the same. This is B above.
154 lines
14 KiB
Plaintext
154 lines
14 KiB
Plaintext
300block.frag
|
|
ERROR: 0:10: '' : cannot nest a structure definition inside a structure or block
|
|
ERROR: 0:21: '' : cannot nest a structure definition inside a structure or block
|
|
ERROR: 0:20: 'sampler' : member of block cannot be or contain a sampler, image, or atomic_uint type
|
|
ERROR: 0:24: 'fbs' : member of block cannot be or contain a sampler, image, or atomic_uint type
|
|
ERROR: 0:45: 'variable indexing uniform block array' : not supported for this version or the enabled extensions
|
|
ERROR: 0:46: 'fooBlock' : cannot be used (maybe an instance name is needed)
|
|
ERROR: 0:46: 'fooBlock' : undeclared identifier
|
|
ERROR: 0:47: 'constructor' : not enough data provided for construction
|
|
ERROR: 0:51: 'unreferenced' : cannot be used (maybe an instance name is needed)
|
|
ERROR: 0:51: 'unreferenced' : undeclared identifier
|
|
ERROR: 0:52: '++' : l-value required "s" (can't modify a uniform)
|
|
ERROR: 0:52: '++' : wrong operand type no operation '++' exists that takes an operand of type uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t} (or there is no acceptable conversion)
|
|
ERROR: 0:53: '-' : wrong operand types: no operation '-' exists that takes a left-hand operand of type 'layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni}' and a right operand of type 'const int' (or there is no acceptable conversion)
|
|
ERROR: 0:55: 'barBlockArray' : cannot be used (maybe an instance name is needed)
|
|
ERROR: 0:55: 'barBlockArray' : undeclared identifier
|
|
ERROR: 0:55: '*' : wrong operand types: no operation '*' exists that takes a left-hand operand of type 'const int' and a right operand of type 'temp float' (or there is no acceptable conversion)
|
|
ERROR: 0:58: 'fooBlock' : redefinition
|
|
ERROR: 17 compilation errors. No code generated.
|
|
|
|
|
|
Shader version: 300
|
|
ERROR: node is still EOpNull!
|
|
0:42 Function Definition: main( (global void)
|
|
0:42 Function Parameters:
|
|
0:44 Sequence
|
|
0:44 texture (global lowp 4-component vector of int)
|
|
0:44 sampler: direct index for structure (global lowp isampler3D)
|
|
0:44 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:44 Constant:
|
|
0:44 2 (const int)
|
|
0:44 Construct vec3 (temp lowp 3-component vector of float)
|
|
0:44 Convert int to float (temp lowp float)
|
|
0:44 ni: direct index for structure (layout(column_major shared ) uniform mediump int)
|
|
0:44 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:44 Constant:
|
|
0:44 1 (const int)
|
|
0:44 Convert uint to float (temp lowp float)
|
|
0:44 direct index (temp mediump uint)
|
|
0:44 bv: direct index for structure (layout(column_major shared ) uniform mediump 4-component vector of uint)
|
|
0:44 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint bv, layout(column_major shared ) uniform mediump 2X2 matrix of float bm2, layout(column_major shared ) uniform lowp isampler2D sampler, layout(column_major shared ) uniform structure{global mediump int a} t, layout(column_major shared ) uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t} fbs})
|
|
0:44 Constant:
|
|
0:44 0 (const uint)
|
|
0:44 Constant:
|
|
0:44 1 (const int)
|
|
0:44 Convert uint to float (temp lowp float)
|
|
0:44 direct index (temp mediump uint)
|
|
0:44 nbv: direct index for structure (layout(column_major shared ) uniform mediump 4-component vector of uint)
|
|
0:44 direct index (layout(column_major shared ) temp block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:44 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:44 Constant:
|
|
0:44 2 (const int)
|
|
0:44 Constant:
|
|
0:44 0 (const int)
|
|
0:44 Constant:
|
|
0:44 2 (const int)
|
|
0:45 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:45 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:45 direct index (temp mediump uint)
|
|
0:45 v: direct index for structure (global mediump 4-component vector of uint)
|
|
0:45 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:45 Constant:
|
|
0:45 1 (const int)
|
|
0:45 Constant:
|
|
0:45 0 (const int)
|
|
0:46 'fooBlock' (temp float)
|
|
0:47 Constant:
|
|
0:47 0.000000
|
|
0:50 Construct mat4 (temp 4X4 matrix of float)
|
|
0:50 'barBlock' (temp mediump float)
|
|
0:51 Construct mat4 (temp 4X4 matrix of float)
|
|
0:51 'unreferenced' (temp float)
|
|
0:52 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:53 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:54 Pre-Increment (temp mediump float)
|
|
0:54 'barBlock' (temp mediump float)
|
|
0:55 Constant:
|
|
0:55 2 (const int)
|
|
0:? Linker Objects
|
|
0:? 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:? 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint bv, layout(column_major shared ) uniform mediump 2X2 matrix of float bm2, layout(column_major shared ) uniform lowp isampler2D sampler, layout(column_major shared ) uniform structure{global mediump int a} t, layout(column_major shared ) uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t} fbs})
|
|
0:? 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:? 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:? 'anon@1' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump float f, layout(column_major shared ) uniform mediump uint u})
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 300
|
|
ERROR: node is still EOpNull!
|
|
0:42 Function Definition: main( (global void)
|
|
0:42 Function Parameters:
|
|
0:44 Sequence
|
|
0:44 texture (global lowp 4-component vector of int)
|
|
0:44 sampler: direct index for structure (global lowp isampler3D)
|
|
0:44 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:44 Constant:
|
|
0:44 2 (const int)
|
|
0:44 Construct vec3 (temp lowp 3-component vector of float)
|
|
0:44 Convert int to float (temp lowp float)
|
|
0:44 ni: direct index for structure (layout(column_major shared ) uniform mediump int)
|
|
0:44 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:44 Constant:
|
|
0:44 1 (const int)
|
|
0:44 Convert uint to float (temp lowp float)
|
|
0:44 direct index (temp mediump uint)
|
|
0:44 bv: direct index for structure (layout(column_major shared ) uniform mediump 4-component vector of uint)
|
|
0:44 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint bv, layout(column_major shared ) uniform mediump 2X2 matrix of float bm2, layout(column_major shared ) uniform lowp isampler2D sampler, layout(column_major shared ) uniform structure{global mediump int a} t, layout(column_major shared ) uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t} fbs})
|
|
0:44 Constant:
|
|
0:44 0 (const uint)
|
|
0:44 Constant:
|
|
0:44 1 (const int)
|
|
0:44 Convert uint to float (temp lowp float)
|
|
0:44 direct index (temp mediump uint)
|
|
0:44 nbv: direct index for structure (layout(column_major shared ) uniform mediump 4-component vector of uint)
|
|
0:44 direct index (layout(column_major shared ) temp block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:44 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:44 Constant:
|
|
0:44 2 (const int)
|
|
0:44 Constant:
|
|
0:44 0 (const int)
|
|
0:44 Constant:
|
|
0:44 2 (const int)
|
|
0:45 indirect index (layout(column_major shared ) temp block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:45 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:45 direct index (temp mediump uint)
|
|
0:45 v: direct index for structure (global mediump 4-component vector of uint)
|
|
0:45 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:45 Constant:
|
|
0:45 1 (const int)
|
|
0:45 Constant:
|
|
0:45 0 (const int)
|
|
0:46 'fooBlock' (temp float)
|
|
0:47 Constant:
|
|
0:47 0.000000
|
|
0:50 Construct mat4 (temp 4X4 matrix of float)
|
|
0:50 'barBlock' (temp mediump float)
|
|
0:51 Construct mat4 (temp 4X4 matrix of float)
|
|
0:51 'unreferenced' (temp float)
|
|
0:52 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:53 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:54 Pre-Increment (temp mediump float)
|
|
0:54 'barBlock' (temp mediump float)
|
|
0:55 Constant:
|
|
0:55 2 (const int)
|
|
0:? Linker Objects
|
|
0:? 's' (uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t})
|
|
0:? 'anon@0' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint bv, layout(column_major shared ) uniform mediump 2X2 matrix of float bm2, layout(column_major shared ) uniform lowp isampler2D sampler, layout(column_major shared ) uniform structure{global mediump int a} t, layout(column_major shared ) uniform structure{global mediump 4-component vector of float u, global mediump 4-component vector of uint v, global lowp isampler3D sampler, global mediump 3-component vector of float w, global structure{global mediump int a} t} fbs})
|
|
0:? 'inst' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:? 'insts' (layout(column_major shared ) uniform 4-element array of block{layout(column_major shared ) uniform mediump 4-component vector of uint nbv, layout(column_major shared ) uniform mediump int ni})
|
|
0:? 'anon@1' (layout(column_major shared ) uniform block{layout(column_major shared ) uniform mediump float f, layout(column_major shared ) uniform mediump uint u})
|
|
|