https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94029
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 48053
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=48053&action=edit
gcc10-pr94029.patch
The problem is that C FE finish_function uses input_location as
cfun->function_end_locus, but input_location isn't really updated very often in
the C FE anymore, mostly in the line change hooks but that doesn't trigger here
because the macro arguments span across newline.
So, either like in the completely untested patch we can update input_location
somewhat more often, or we'd need to propagate the location_t of the closing }
from c_parser_compound_statement_nostart to the callers.