From 8a132aa08b423765f273e399baea7d68b44cd37d Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Thu, 17 Jun 2010 12:30:57 -0700 Subject: [PATCH] glcpp: Add line locations to various mismatched #if error messages. --- glcpp/glcpp-parse.y | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/glcpp/glcpp-parse.y b/glcpp/glcpp-parse.y index b1669fa331c..02608644c38 100644 --- a/glcpp/glcpp-parse.y +++ b/glcpp/glcpp-parse.y @@ -126,11 +126,11 @@ static void _glcpp_parser_skip_stack_push_if (glcpp_parser_t *parser, int condition); static void -_glcpp_parser_skip_stack_change_if (glcpp_parser_t *parser, const char *type, - int condition); +_glcpp_parser_skip_stack_change_if (glcpp_parser_t *parser, YYLTYPE *loc, + const char *type, int condition); static void -_glcpp_parser_skip_stack_pop (glcpp_parser_t *parser); +_glcpp_parser_skip_stack_pop (glcpp_parser_t *parser, YYLTYPE *loc); #define yylex glcpp_parser_lex @@ -193,7 +193,7 @@ expanded_line: _glcpp_parser_skip_stack_push_if (parser, $2); } | ELIF_EXPANDED expression NEWLINE { - _glcpp_parser_skip_stack_change_if (parser, "elif", $2); + _glcpp_parser_skip_stack_change_if (parser, & @1, "elif", $2); } ; @@ -255,10 +255,10 @@ control_line: glcpp_parser_lex_from (parser, expanded); } | HASH_ELSE NEWLINE { - _glcpp_parser_skip_stack_change_if (parser, "else", 1); + _glcpp_parser_skip_stack_change_if (parser, & @1, "else", 1); } | HASH_ENDIF NEWLINE { - _glcpp_parser_skip_stack_pop (parser); + _glcpp_parser_skip_stack_pop (parser, & @1); } | HASH NEWLINE ; @@ -1603,11 +1603,11 @@ _glcpp_parser_skip_stack_push_if (glcpp_parser_t *parser, int condition) } static void -_glcpp_parser_skip_stack_change_if (glcpp_parser_t *parser, const char *type, - int condition) +_glcpp_parser_skip_stack_change_if (glcpp_parser_t *parser, YYLTYPE *loc, + const char *type, int condition) { if (parser->skip_stack == NULL) { - glcpp_printf (parser->errors, "Error: %s without #if\n", type); + glcpp_error (loc, parser, "%s without #if\n", type); exit (1); } @@ -1620,12 +1620,12 @@ _glcpp_parser_skip_stack_change_if (glcpp_parser_t *parser, const char *type, } static void -_glcpp_parser_skip_stack_pop (glcpp_parser_t *parser) +_glcpp_parser_skip_stack_pop (glcpp_parser_t *parser, YYLTYPE *loc) { skip_node_t *node; if (parser->skip_stack == NULL) { - glcpp_print (parser->errors, "Error: #endif without #if\n"); + glcpp_error (loc, parser, "#endif without #if\n"); exit (1); } -- 2.30.2