GLSL: Revert f6873f7 to fix #1764.
diff --git a/Test/baseResults/310.comp.out b/Test/baseResults/310.comp.out
index 4b65ea1..b4136b0 100644
--- a/Test/baseResults/310.comp.out
+++ b/Test/baseResults/310.comp.out
@@ -29,7 +29,6 @@
ERROR: 0:97: '' : memory qualifiers cannot be used on this type
ERROR: 0:98: '' : memory qualifiers cannot be used on this type
ERROR: 0:109: 'format' : image formats must match
-ERROR: 0:110: 'restrict' : argument cannot drop memory qualifier when passed to formal parameter
ERROR: 0:110: 'format' : image formats must match
ERROR: 0:111: 'format' : image formats must match
ERROR: 0:114: 'image load-store format' : not supported with this profile: es
@@ -87,7 +86,7 @@
ERROR: 0:244: 'gl_DeviceIndex' : required extension not requested: GL_EXT_device_group
ERROR: 0:245: 'gl_ViewIndex' : undeclared identifier
ERROR: 0:255: 'gl_ViewIndex' : undeclared identifier
-ERROR: 86 compilation errors. No code generated.
+ERROR: 85 compilation errors. No code generated.
Shader version: 310
diff --git a/glslang/MachineIndependent/ParseHelper.cpp b/glslang/MachineIndependent/ParseHelper.cpp
index 7b0f066..8e570ae 100644
--- a/glslang/MachineIndependent/ParseHelper.cpp
+++ b/glslang/MachineIndependent/ParseHelper.cpp
@@ -1165,8 +1165,9 @@
error(arguments->getLoc(), message, "readonly", "");
if (argQualifier.writeonly && ! formalQualifier.writeonly)
error(arguments->getLoc(), message, "writeonly", "");
- if (!builtIn && argQualifier.restrict && ! formalQualifier.restrict)
- error(arguments->getLoc(), message, "restrict", "");
+ // Don't check 'restrict', it is different than the rest:
+ // "...but only restrict can be taken away from a calling argument, by a formal parameter that
+ // lacks the restrict qualifier..."
}
if (!builtIn && argQualifier.layoutFormat != formalQualifier.layoutFormat) {
// we have mismatched formats, which should only be allowed if writeonly