[Mesa-dev] [PATCH] glsl/glcpp: Rename ERROR to ERROR_TOKEN.

jfonseca at vmware.com jfonseca at vmware.com
Wed Jul 30 02:42:38 PDT 2014


From: José Fonseca <jfonseca at vmware.com>

To prevent collision with wingdi.h's ERROR define, using the same _TOKEN
suffix already forsome other tokens due to similar reasons.

PS: Name collisions will be rife with single capitalized words.  And
using _TOKEN suffix for only some of the tokens is not particularly
consistent nor pretty.  So it might be worth using an unique
prefix/suffix for all tokens (even if something short like *_TKN or
TKN_*), to avoid this sort of issue while having consistency.
---
 src/glsl/glcpp/glcpp-lex.l   | 2 +-
 src/glsl/glcpp/glcpp-parse.y | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/glsl/glcpp/glcpp-lex.l b/src/glsl/glcpp/glcpp-lex.l
index 4b9ab23..c126850 100644
--- a/src/glsl/glcpp/glcpp-lex.l
+++ b/src/glsl/glcpp/glcpp-lex.l
@@ -350,7 +350,7 @@ HEXADECIMAL_INTEGER	0[xX][0-9a-fA-F]+[uU]?
 
 <HASH>error.* {
 	BEGIN INITIAL;
-	RETURN_STRING_TOKEN (ERROR);
+	RETURN_STRING_TOKEN (ERROR_TOKEN);
 }
 
 	/* After we see a "#define" we enter the <DEFINE> start state
diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
index bc873cd..4ee4110 100644
--- a/src/glsl/glcpp/glcpp-parse.y
+++ b/src/glsl/glcpp/glcpp-parse.y
@@ -171,11 +171,11 @@ add_builtin_define(glcpp_parser_t *parser, const char *name, int value);
 	/* We use HASH_TOKEN, DEFINE_TOKEN and VERSION_TOKEN (as opposed to
          * HASH, DEFINE, and VERSION) to avoid conflicts with other symbols,
          * (such as the <HASH> and <DEFINE> start conditions in the lexer). */
-%token COMMA_FINAL DEFINED ELIF_EXPANDED HASH_TOKEN DEFINE_TOKEN FUNC_IDENTIFIER OBJ_IDENTIFIER ELIF ELSE ENDIF ERROR IF IFDEF IFNDEF LINE PRAGMA UNDEF VERSION_TOKEN GARBAGE IDENTIFIER IF_EXPANDED INTEGER INTEGER_STRING LINE_EXPANDED NEWLINE OTHER PLACEHOLDER SPACE PLUS_PLUS MINUS_MINUS
+%token COMMA_FINAL DEFINED ELIF_EXPANDED HASH_TOKEN DEFINE_TOKEN FUNC_IDENTIFIER OBJ_IDENTIFIER ELIF ELSE ENDIF ERROR_TOKEN IF IFDEF IFNDEF LINE PRAGMA UNDEF VERSION_TOKEN GARBAGE IDENTIFIER IF_EXPANDED INTEGER INTEGER_STRING LINE_EXPANDED NEWLINE OTHER PLACEHOLDER SPACE PLUS_PLUS MINUS_MINUS
 %token PASTE
 %type <ival> INTEGER operator SPACE integer_constant
 %type <expression_value> expression
-%type <str> IDENTIFIER FUNC_IDENTIFIER OBJ_IDENTIFIER INTEGER_STRING OTHER ERROR PRAGMA
+%type <str> IDENTIFIER FUNC_IDENTIFIER OBJ_IDENTIFIER INTEGER_STRING OTHER ERROR_TOKEN PRAGMA
 %type <string_list> identifier_list
 %type <token> preprocessing_token conditional_token
 %type <token_list> pp_tokens replacement_list text_line conditional_tokens
@@ -421,7 +421,7 @@ control_line_success:
 ;
 
 control_line_error:
-	HASH_TOKEN ERROR NEWLINE {
+	HASH_TOKEN ERROR_TOKEN NEWLINE {
 		glcpp_error(& @1, parser, "#%s", $2);
 	}
 |	HASH_TOKEN GARBAGE pp_tokens NEWLINE  {
-- 
1.9.1



More information about the mesa-dev mailing list