glslang: Correct global precision qualifiers to make the qualifier global instead of temp (local).

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30975 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2015-04-29 11:00:28 +00:00
parent 8b37b04ecc
commit 09388459a8
11 changed files with 92 additions and 90 deletions

View file

@ -2217,7 +2217,8 @@ void TParseContext::mergeQualifiers(TSourceLoc loc, TQualifier& dst, const TQual
else if ((dst.storage == EvqIn && src.storage == EvqConst) ||
(dst.storage == EvqConst && src.storage == EvqIn))
dst.storage = EvqConstReadOnly;
else if (src.storage != EvqTemporary)
else if (src.storage != EvqTemporary &&
src.storage != EvqGlobal)
error(loc, "too many storage qualifiers", GetStorageQualifierString(src.storage), "");
// Precision qualifiers
@ -2871,6 +2872,7 @@ void TParseContext::paramCheckFix(TSourceLoc loc, const TStorageQualifier& quali
case EvqInOut:
type.getQualifier().storage = qualifier;
break;
case EvqGlobal:
case EvqTemporary:
type.getQualifier().storage = EvqIn;
break;