Fixed uniform block indexing A uniform block's qualifier is generally a uniform, so we have to change that to a temporary in order to be able to us it as the result of the indexing operation. Change-Id: I2f5ba7f966e8eaab314322edfa0483a9f24bfbdb Reviewed-on: https://swiftshader-review.googlesource.com/4543 Tested-by: Alexis Hétu <sugoi@google.com> Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/compiler/ParseHelper.cpp b/src/OpenGL/compiler/ParseHelper.cpp index 522b13e..8e41c3f 100644 --- a/src/OpenGL/compiler/ParseHelper.cpp +++ b/src/OpenGL/compiler/ParseHelper.cpp
@@ -2339,7 +2339,7 @@ } else if(baseType.isInterfaceBlock()) { - TType copyOfType(baseType.getInterfaceBlock(), baseType.getQualifier(), baseType.getLayoutQualifier(), 0); + TType copyOfType(baseType.getInterfaceBlock(), EvqTemporary, baseType.getLayoutQualifier(), 0); indexedExpression->setType(copyOfType); } else