Use more modern bison %parse-param and %lex-param rather than #defined YYPARSE_PARAM...
authorJohn Kessenich <cepheus@frii.com>
Sat, 8 Mar 2014 00:17:27 +0000 (00:17 +0000)
committerJohn Kessenich <cepheus@frii.com>
Sat, 8 Mar 2014 00:17:27 +0000 (00:17 +0000)
git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@25746 e7fa87d3-cd2b-0410-9028-fcbf551c1848

glslang/Include/revision.h
glslang/MachineIndependent/ParseHelper.cpp
glslang/MachineIndependent/Scan.cpp
glslang/MachineIndependent/glslang.y

index a0a39d2..b2eb463 100644 (file)
@@ -9,5 +9,5 @@
 // source have to figure out how to create revision.h just to get a build\r
 // going.  However, if it is not updated, it can be a version behind.\r
 \r
-#define GLSLANG_REVISION "25511"\r
-#define GLSLANG_DATE     "2014/02/24 14:16:19"\r
+#define GLSLANG_REVISION "25512"\r
+#define GLSLANG_DATE     "2014/02/24 14:36:08"\r
index 9d3b9b8..aff1e62 100644 (file)
@@ -43,7 +43,7 @@
 
 #include "preprocessor/PpContext.h"
 
-extern int yyparse(void*);
+extern int yyparse(glslang::TParseContext*);
 
 namespace glslang {
 
@@ -143,7 +143,7 @@ bool TParseContext::parseShaderStrings(TPpContext& ppContext, TInputScanner& inp
 {
     currentScanner = &input;
     ppContext.setInput(input, versionWillBeError);
-    yyparse((void*)this);
+    yyparse(this);
     finalErrorCheck();
 
     return numErrors == 0;
index 0a2a237..3d675df 100644 (file)
@@ -42,8 +42,8 @@
 
 #include "../Include/Types.h"
 #include "SymbolTable.h"
-#include "glslang_tab.cpp.h"
 #include "ParseHelper.h"
+#include "glslang_tab.cpp.h"
 #include "ScanContext.h"
 #include "Scan.h"
 
index ba5cedd..32a0717 100644 (file)
@@ -97,15 +97,15 @@ using namespace glslang;
 \r
 %{\r
 \r
-#define YYPARSE_PARAM voidParseContext\r
-#define parseContext (*(TParseContext*)voidParseContext)\r
-#define YYLEX_PARAM parseContext\r
-#define yyerror(msg) parseContext.parserError(msg)\r
+#define parseContext (*pParseContext)\r
+#define yyerror(context, msg) context->parserError(msg)\r
 \r
 extern int yylex(YYSTYPE*, TParseContext&);\r
 \r
 %}\r
 \r
+%parse-param {glslang::TParseContext* pParseContext}\r
+%lex-param {parseContext}\r
 %pure_parser  // enable thread safety\r
 %expect 1     // One shift reduce conflict because of if | else\r
 \r