summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2010-03-19 11:12:33 -0700
committerIan Romanick <ian.d.romanick@intel.com>2010-03-19 11:12:33 -0700
commitb0bb781e1dae3d98b861c1f6cae7fb99efefe2e1 (patch)
treeac9009d4336383f56a81961f8886825e8cab2135
parente309a6051d1a04ee581f0a47c6c585918fba1096 (diff)
Don't track new type names during pass-1 parsing
This implementation was wrong anyway because it did not respect scoping rules. This will need to be revisited soon. The most likely result is that the grammar is going to need some significant re-work to be able to use a IDENTIFIER in all the places where a TYPE_NAME is currently used.
-rw-r--r--glsl_lexer.lpp9
-rw-r--r--glsl_parser.ypp3
2 files changed, 1 insertions, 11 deletions
diff --git a/glsl_lexer.lpp b/glsl_lexer.lpp
index 9c7e3064e4..8f3f1211d5 100644
--- a/glsl_lexer.lpp
+++ b/glsl_lexer.lpp
@@ -24,7 +24,6 @@
#include "ast.h"
#include "glsl_parser_extras.h"
#include "glsl_parser.h"
-#include "symbol_table.h"
#define YY_USER_ACTION \
do { \
@@ -245,13 +244,7 @@ precision return PRECISION;
[_a-zA-Z][_a-zA-Z0-9]* {
yylval->identifier = strdup(yytext);
-
- if (_mesa_symbol_table_find_symbol(yyextra->symbols,
- 0,
- yylval->identifier))
- return TYPE_NAME;
- else
- return IDENTIFIER;
+ return IDENTIFIER;
}
. { return yytext[0]; }
diff --git a/glsl_parser.ypp b/glsl_parser.ypp
index 2bc5cb06e6..7af93dd944 100644
--- a/glsl_parser.ypp
+++ b/glsl_parser.ypp
@@ -28,7 +28,6 @@
#include "ast.h"
#include "glsl_parser_extras.h"
-#include "symbol_table.h"
#include "glsl_types.h"
#define YYLEX_PARAM state->scanner
@@ -934,8 +933,6 @@ struct_specifier:
STRUCT IDENTIFIER '{' struct_declaration_list '}'
{
$$ = new ast_struct_specifier($2, $4);
-
- _mesa_symbol_table_add_symbol(state->symbols, 0, $2, $$);
}
| STRUCT '{' struct_declaration_list '}'
{