diff --git a/glslang/Include/revision.h b/glslang/Include/revision.h index 2d79b424..44f6a14f 100644 --- a/glslang/Include/revision.h +++ b/glslang/Include/revision.h @@ -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 "Overload400-PrecQual.1528" -#define GLSLANG_DATE "29-Sep-2016" +#define GLSLANG_REVISION "Overload400-PrecQual.1541" +#define GLSLANG_DATE "01-Oct-2016" diff --git a/hlsl/hlslGrammar.cpp b/hlsl/hlslGrammar.cpp index 9652129c..b41618c2 100755 --- a/hlsl/hlslGrammar.cpp +++ b/hlsl/hlslGrammar.cpp @@ -366,7 +366,7 @@ bool HlslGrammar::acceptDeclaration(TIntermNode*& node) else if (variableType.getBasicType() == EbtBlock) parseContext.declareBlock(idToken.loc, variableType, idToken.string); else { - if (variableType.getQualifier().storage == EvqUniform && variableType.getBasicType() != EbtSampler) { + if (variableType.getQualifier().storage == EvqUniform && ! variableType.isOpaque()) { // this isn't really an individual variable, but a member of the $Global buffer parseContext.growGlobalUniformBlock(idToken.loc, variableType, *idToken.string); } else { diff --git a/hlsl/hlslParseHelper.cpp b/hlsl/hlslParseHelper.cpp index 44a4230b..47c6fd67 100755 --- a/hlsl/hlslParseHelper.cpp +++ b/hlsl/hlslParseHelper.cpp @@ -737,8 +737,7 @@ bool HlslParseContext::shouldFlattenUniform(const TType& type) const return type.isArray() && intermediate.getFlattenUniformArrays() && qualifier == EvqUniform && - // Testing the EbtSampler basic type covers samplers and textures - type.getBasicType() == EbtSampler; + type.isOpaque(); } void HlslParseContext::flatten(const TSourceLoc& loc, const TVariable& variable)