Types: Fix #1290: Rationalize and correct "mixed" style array dimensioning.
There a couple functional problems, which when reduced down also led to some good simplifications and rationalization. So, this commit: - corrects "mixed" functionality: int[A] f[B] -> f[B][A] - correct multi-identifier decls: int[A] f[B], g[C] -> f and g are independently sized. - increases symmetry between different places in the code that do this - makes fewer ways to do the same thing; several methods are just gone now - makes more clear when something is copied or shared
This commit is contained in:
@@ -2607,8 +2607,8 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
|
||||
// Use a dummy glslang type for querying internal strides of
|
||||
// arrays of arrays, but using just a one-dimensional array.
|
||||
glslang::TType simpleArrayType(type, 0); // deference type of the array
|
||||
while (simpleArrayType.getArraySizes().getNumDims() > 1)
|
||||
simpleArrayType.getArraySizes().dereference();
|
||||
while (simpleArrayType.getArraySizes()->getNumDims() > 1)
|
||||
simpleArrayType.getArraySizes()->dereference();
|
||||
|
||||
// Will compute the higher-order strides here, rather than making a whole
|
||||
// pile of types and doing repetitive recursion on their contents.
|
||||
|
||||
Reference in New Issue
Block a user