https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118147
Nathaniel Shead <nshead at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2024-12-20
Ever confirmed|0 |1
CC| |nshead at gcc dot gnu.org
Status|UNCONFIRMED |NEW
--- Comment #1 from Nathaniel Shead <nshead at gcc dot gnu.org> ---
Confirmed. The following (untested) minimal patch seems to fix the issue:
diff --git a/gcc/cp/parser.cc b/gcc/cp/parser.cc
index 23c6a2fd30e..527a858ea52 100644
--- a/gcc/cp/parser.cc
+++ b/gcc/cp/parser.cc
@@ -36316,7 +36316,6 @@ cp_parser_cache_defarg (cp_parser *parser, bool nsdmi)
/* If we run out of tokens, issue an error message. */
case CPP_EOF:
- case CPP_PRAGMA_EOL:
error_at (token->location, "file ends in default argument");
return error_mark_node;
I'm not sure why CPP_PRAGMA_EOL is treated as EOF here in the first place?