GLSL: Check for implicit inner dimension in array of atomic_uint.
This commit is contained in:
parent
9cfc15513f
commit
437911af33
21
Test/baseResults/implicitInnerAtomicUint.frag.out
Normal file
21
Test/baseResults/implicitInnerAtomicUint.frag.out
Normal file
@ -0,0 +1,21 @@
|
||||
implicitInnerAtomicUint.frag
|
||||
ERROR: 0:2: '[]' : only outermost dimension of an array of arrays can be implicitly sized
|
||||
ERROR: 0:2: 'atomic_uint' : array must be explicitly sized
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Linker Objects
|
||||
0:? 'c' (layout( binding=0 offset=0) uniform 1-element array of implicitly-sized array of atomic_uint)
|
||||
|
||||
|
||||
Linked fragment stage:
|
||||
|
||||
ERROR: Linking fragment stage: Missing entry point: Each stage requires one entry point
|
||||
|
||||
Shader version: 460
|
||||
ERROR: node is still EOpNull!
|
||||
0:? Linker Objects
|
||||
0:? 'c' (layout( binding=0 offset=0) uniform 1-element array of implicitly-sized array of atomic_uint)
|
||||
|
2
Test/implicitInnerAtomicUint.frag
Normal file
2
Test/implicitInnerAtomicUint.frag
Normal file
@ -0,0 +1,2 @@
|
||||
#version 460
|
||||
layout(binding = 0) uniform atomic_uint c[1][];
|
@ -4863,7 +4863,7 @@ void TParseContext::fixOffset(const TSourceLoc& loc, TSymbol& symbol)
|
||||
// Check for overlap
|
||||
int numOffsets = 4;
|
||||
if (symbol.getType().isArray()) {
|
||||
if (symbol.getType().isExplicitlySizedArray())
|
||||
if (symbol.getType().isExplicitlySizedArray() && ! symbol.getType().getArraySizes()->isInnerImplicit())
|
||||
numOffsets *= symbol.getType().getCumulativeArraySize();
|
||||
else {
|
||||
// "It is a compile-time error to declare an unsized array of atomic_uint."
|
||||
|
@ -159,6 +159,7 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"460.vert",
|
||||
"dce.frag",
|
||||
"atomic_uint.frag",
|
||||
"implicitInnerAtomicUint.frag",
|
||||
"aggOps.frag",
|
||||
"always-discard.frag",
|
||||
"always-discard2.frag",
|
||||
|
Loading…
x
Reference in New Issue
Block a user