c++: fix PR104025 change
authorJason Merrill <jason@redhat.com>
Wed, 19 Jan 2022 03:11:56 +0000 (22:11 -0500)
committerJason Merrill <jason@redhat.com>
Wed, 19 Jan 2022 04:06:56 +0000 (23:06 -0500)
Somehow I pushed my earlier patch without it actually fixing the test; we
need input_location to be for the last consumed token, not the next one.

gcc/cp/ChangeLog:

* parser.cc (saved_token_sentinel::rollback): Use
cp_lexer_previous_token.

gcc/cp/parser.cc

index 60d9f7b..00279c4 100644 (file)
@@ -1308,7 +1308,8 @@ struct saved_token_sentinel
   void rollback ()
   {
     cp_lexer_rollback_tokens (lexer);
-    cp_lexer_set_source_position (lexer);
+    cp_lexer_set_source_position_from_token
+      (cp_lexer_previous_token (lexer));
     mode = STS_DONOTHING;
   }
   ~saved_token_sentinel ()