Link-check fix: Don't include built-in variables in the fragment output ES rule:
authorJohn Kessenich <cepheus@frii.com>
Fri, 21 Aug 2015 15:19:52 +0000 (09:19 -0600)
committerJohn Kessenich <cepheus@frii.com>
Fri, 21 Aug 2015 15:19:52 +0000 (09:19 -0600)
"No layout(location=) is required if there is only one output" should not count
built-in variables like gl_SampleMask.  This is fixed.

glslang/Include/revision.h
glslang/MachineIndependent/linkValidate.cpp

index ba32216..c76f907 100644 (file)
@@ -2,5 +2,5 @@
 // For the version, it uses the latest git tag followed by the number of commits.
 // For the date, it uses the current date (when then script is run).
 
-#define GLSLANG_REVISION "3.0.729"
-#define GLSLANG_DATE "19-Aug-2015"
+#define GLSLANG_REVISION "3.0.730"
+#define GLSLANG_DATE "21-Aug-2015"
index 751d0c3..643c888 100644 (file)
@@ -548,7 +548,7 @@ void TIntermediate::inOutLocationCheck(TInfoSink& infoSink)
         const TType& type = linkObjects[i]->getAsTyped()->getType();
         const TQualifier& qualifier = type.getQualifier();
         if (language == EShLangFragment) {
-            if (qualifier.storage == EvqVaryingOut) {
+            if (qualifier.storage == EvqVaryingOut && qualifier.builtIn == EbvNone) {
                 ++numFragOut;
                 if (!qualifier.hasAnyLocation())
                     fragOutWithNoLocation = true;