Uniform block instance name validation
This cl adds validation that uniform block instance names aren't
reserved names.
Fixes 2 tests:
dEQP-GLES3.functional.shaders.uniform_block.invalid.invalid_identifier_instance_name_*
Change-Id: I4a39c734cdf4d11ea4221c73c1f639fa2f56921d
Reviewed-on: https://swiftshader-review.googlesource.com/15868
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <nicolascapens@google.com>
diff --git a/src/OpenGL/compiler/ParseHelper.cpp b/src/OpenGL/compiler/ParseHelper.cpp
index 00f4829..1dbe682 100644
--- a/src/OpenGL/compiler/ParseHelper.cpp
+++ b/src/OpenGL/compiler/ParseHelper.cpp
@@ -2431,6 +2431,9 @@
}
else
{
+ if(reservedErrorCheck(nameLine, *instanceName))
+ recover();
+
// add a symbol for this interface block
TVariable* instanceTypeDef = new TVariable(instanceName, interfaceBlockType, false);
instanceTypeDef->setQualifier(typeQualifier.qualifier);