]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
parser.c (cp_lexer_set_source_position): New.
authorPaolo Carlini <paolo.carlini@oracle.com>
Thu, 6 Mar 2014 09:40:06 +0000 (09:40 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Thu, 6 Mar 2014 09:40:06 +0000 (09:40 +0000)
2014-03-06  Paolo Carlini  <paolo.carlini@oracle.com>

* parser.c (cp_lexer_set_source_position): New.
(cp_parser_mem_initializer): Use it.
     (cp_parser_postfix_open_square_expression): Likewise.
     (cp_parser_parenthesized_expression_list): Likewise.
     (cp_parser_new_initializer): Likewise.
     (cp_parser_jump_statement): Likewise.
     (cp_parser_initializer): Likewise.
     (cp_parser_functional_cast): Likewise.

From-SVN: r208378

gcc/cp/ChangeLog
gcc/cp/parser.c

index a0b87bf91af8555df8f109d8b4dc9ab3def97c78..70db35c1de9991ca2fa7fbdc3505115d4016e74b 100644 (file)
@@ -1,3 +1,14 @@
+2014-03-06  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       * parser.c (cp_lexer_set_source_position): New.
+       (cp_parser_mem_initializer): Use it.
+       (cp_parser_postfix_open_square_expression): Likewise.
+       (cp_parser_parenthesized_expression_list): Likewise.
+       (cp_parser_new_initializer): Likewise.
+       (cp_parser_jump_statement): Likewise.
+       (cp_parser_initializer): Likewise.
+       (cp_parser_functional_cast): Likewise.
+
 2014-03-05  Jason Merrill  <jason@redhat.com>
 
        PR c++/60409
index b56870d62255116fa71a1d80e260ac5f778be787..8bc1126e2382e1608d44cf137d12c13eea4b2d59 100644 (file)
@@ -844,6 +844,14 @@ cp_lexer_set_source_position_from_token (cp_token *token)
     }
 }
 
+/* Update the globals input_location and the input file stack from LEXER.  */
+static inline void
+cp_lexer_set_source_position (cp_lexer *lexer)
+{
+  cp_token *token = cp_lexer_peek_token (lexer);
+  cp_lexer_set_source_position_from_token (token);
+}
+
 /* Return a pointer to the next token in the token stream, but do not
    consume it.  */
 
@@ -6359,8 +6367,7 @@ cp_parser_postfix_open_square_expression (cp_parser *parser,
       if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_BRACE))
        {
          bool expr_nonconst_p;
-         cp_token *token = cp_lexer_peek_token (parser->lexer);
-         cp_lexer_set_source_position_from_token (token);
+         cp_lexer_set_source_position (parser->lexer);
          maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
          index = cp_parser_braced_list (parser, &expr_nonconst_p);
          if (flag_cilkplus
@@ -6673,8 +6680,7 @@ cp_parser_parenthesized_expression_list (cp_parser* parser,
            if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_BRACE))
              {
                /* A braced-init-list.  */
-               cp_token *token = cp_lexer_peek_token (parser->lexer);
-               cp_lexer_set_source_position_from_token (token);
+               cp_lexer_set_source_position (parser->lexer);
                maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
                expr = cp_parser_braced_list (parser, &expr_non_constant_p);
                if (non_constant_p && expr_non_constant_p)
@@ -7523,8 +7529,7 @@ cp_parser_new_initializer (cp_parser* parser)
     {
       tree t;
       bool expr_non_constant_p;
-      cp_token *token = cp_lexer_peek_token (parser->lexer);
-      cp_lexer_set_source_position_from_token (token);
+      cp_lexer_set_source_position (parser->lexer);
       maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
       t = cp_parser_braced_list (parser, &expr_non_constant_p);
       CONSTRUCTOR_IS_DIRECT_INIT (t) = 1;
@@ -10681,8 +10686,7 @@ cp_parser_jump_statement (cp_parser* parser)
 
        if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_BRACE))
          {
-           cp_token *token = cp_lexer_peek_token (parser->lexer);
-           cp_lexer_set_source_position_from_token (token);
+           cp_lexer_set_source_position (parser->lexer);
            maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
            expr = cp_parser_braced_list (parser, &expr_non_constant_p);
          }
@@ -12361,8 +12365,7 @@ cp_parser_mem_initializer (cp_parser* parser)
   if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_BRACE))
     {
       bool expr_non_constant_p;
-      cp_token *token = cp_lexer_peek_token (parser->lexer);
-      cp_lexer_set_source_position_from_token (token);
+      cp_lexer_set_source_position (parser->lexer);
       maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
       expression_list = cp_parser_braced_list (parser, &expr_non_constant_p);
       CONSTRUCTOR_IS_DIRECT_INIT (expression_list) = 1;
@@ -18816,8 +18819,7 @@ cp_parser_initializer (cp_parser* parser, bool* is_direct_init,
     }
   else if (token->type == CPP_OPEN_BRACE)
     {
-      cp_token *token = cp_lexer_peek_token (parser->lexer);
-      cp_lexer_set_source_position_from_token (token);
+      cp_lexer_set_source_position (parser->lexer);
       maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
       init = cp_parser_braced_list (parser, non_constant_p);
       CONSTRUCTOR_IS_DIRECT_INIT (init) = 1;
@@ -23253,8 +23255,7 @@ cp_parser_functional_cast (cp_parser* parser, tree type)
 
   if (cp_lexer_next_token_is (parser->lexer, CPP_OPEN_BRACE))
     {
-      cp_token *token = cp_lexer_peek_token (parser->lexer);
-      cp_lexer_set_source_position_from_token (token);
+      cp_lexer_set_source_position (parser->lexer);
       maybe_warn_cpp0x (CPP0X_INITIALIZER_LISTS);
       expression_list = cp_parser_braced_list (parser, &nonconst_p);
       CONSTRUCTOR_IS_DIRECT_INIT (expression_list) = 1;