From: Sir Anthony Date: Wed, 5 Feb 2014 15:18:08 +0000 (+0600) Subject: glsl: Update lexers in glsl and glcpp to hande end position of token. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6984aa43504bd9b68692872cd711af3931607576;p=mesa.git glsl: Update lexers in glsl and glcpp to hande end position of token. Reviewed-by: Carl Worth --- diff --git a/src/glsl/glcpp/glcpp-lex.l b/src/glsl/glcpp/glcpp-lex.l index ea3b862e41e..6bf7950412f 100644 --- a/src/glsl/glcpp/glcpp-lex.l +++ b/src/glsl/glcpp/glcpp-lex.l @@ -47,8 +47,9 @@ void glcpp_set_column (int column_no , yyscan_t yyscanner); if (parser->has_new_source_number) \ yylloc->source = parser->new_source_number; \ yylloc->first_column = yycolumn + 1; \ - yylloc->first_line = yylineno; \ + yylloc->first_line = yylloc->last_line = yylineno; \ yycolumn += yyleng; \ + yylloc->last_column = yycolumn + 1; \ parser->has_new_line_number = 0; \ parser->has_new_source_number = 0; \ } while(0); diff --git a/src/glsl/glsl_lexer.ll b/src/glsl/glsl_lexer.ll index 9fd9b80d3e8..760235127b8 100644 --- a/src/glsl/glsl_lexer.ll +++ b/src/glsl/glsl_lexer.ll @@ -38,8 +38,9 @@ static int classify_identifier(struct _mesa_glsl_parse_state *, const char *); do { \ yylloc->source = 0; \ yylloc->first_column = yycolumn + 1; \ - yylloc->first_line = yylineno + 1; \ + yylloc->first_line = yylloc->last_line = yylineno + 1; \ yycolumn += yyleng; \ + yylloc->last_column = yycolumn + 1; \ } while(0); #define YY_USER_INIT yylineno = 0; yycolumn = 0;