Add GL_OES_texture_3D extension. Also, minor tweaks to extension adding infrastructure.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24001 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2013-11-11 18:50:06 +00:00
parent df81ce90c3
commit 115a0adc29
8 changed files with 105 additions and 26 deletions

View file

@ -781,6 +781,13 @@ int TScanContext::tokenizeIdentifier()
return keyword;
case SAMPLER3D:
afterType = true;
if (parseContext.profile == EEsProfile && parseContext.version < 300) {
if (! parseContext.extensionsTurnedOn(1, &GL_OES_texture_3D))
reservedWord();
}
return keyword;
case SAMPLER2DSHADOW:
afterType = true;
if (parseContext.profile == EEsProfile && parseContext.version < 300)
@ -883,9 +890,13 @@ int TScanContext::identifierOrType()
return IDENTIFIER;
}
// Give an error for use of a reserved symbol.
// However, allow built-in declarations to use reserved words, to allow
// extension support before the extension is enabled.
int TScanContext::reservedWord()
{
parseContext.error(loc, "Reserved word.", tokenText, "", "");
if (! parseContext.symbolTable.atBuiltInLevel())
parseContext.error(loc, "Reserved word.", tokenText, "", "");
return 0;
}