Add limit checking for constant texture texel offsets and max_vertices.
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@24158 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
parent
1e91f5ee8d
commit
1d1132d9eb
11 changed files with 193 additions and 46 deletions
|
|
@ -65,7 +65,7 @@ public:
|
|||
TParseContext(TSymbolTable&, TIntermediate&, bool parsingBuiltins, int version, EProfile, EShLanguage, TInfoSink&,
|
||||
bool forwardCompatible = false, EShMessages messages = EShMsgDefault);
|
||||
|
||||
void setLimits(const TLimits&);
|
||||
void setLimits(const TBuiltInResource&);
|
||||
bool parseShaderStrings(TPpContext&, TInputScanner& input, bool versionWillBeError = false);
|
||||
void parserError(const char *s); // for bison's yyerror
|
||||
const char* getPreamble();
|
||||
|
|
@ -91,7 +91,7 @@ public:
|
|||
TFunction* handleFunctionDeclarator(TSourceLoc loc, TFunction& function);
|
||||
TIntermAggregate* handleFunctionDefinition(TSourceLoc, TFunction&);
|
||||
TIntermTyped* handleFunctionCall(TSourceLoc, TFunction*, TIntermNode*, TIntermAggregate*);
|
||||
void nonOpBuiltInCheck(TSourceLoc, const TFunction&, TIntermAggregate*);
|
||||
void nonOpBuiltInCheck(TSourceLoc, const TFunction&, TIntermAggregate&);
|
||||
TFunction* handleConstructorCall(TSourceLoc, TPublicType&);
|
||||
|
||||
bool parseVectorFields(TSourceLoc, const TString&, int vecSize, TVectorFields&);
|
||||
|
|
@ -231,7 +231,8 @@ public:
|
|||
TIntermAggregate *linkage; // aggregate node of objects the linker may need, if not referenced by the rest of the AST
|
||||
TPrecisionQualifier defaultPrecision[EbtNumTypes];
|
||||
bool tokensBeforeEOF;
|
||||
TLimits limits;
|
||||
TBuiltInResource resources;
|
||||
TLimits& limits;
|
||||
|
||||
protected:
|
||||
TScanContext* scanContext;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue