https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97855
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:f232f782e6e4954370ac63ba6e40ad554c0cf942 commit r11-7504-gf232f782e6e4954370ac63ba6e40ad554c0cf942 Author: Richard Biener <rguent...@suse.de> Date: Thu Mar 4 09:00:55 2021 +0100 middle-end/97855 - avoid recursing into pp_printf When diagnostic messages use pretty-printer formats like %D or %E the pp_printf invocation can end up in tree pretty-printers which then have to avoid using pp_printf themselves since this function is not re-entrant. The following removes all pp_printf uses from tree-pretty-print.c fixing the observed malformed diagnostics. It also poisons the identifier so new uses are less likely to creep in. 2021-03-04 Richard Biener <rguent...@suse.de> PR middle-end/97855 * tree-pretty-print.c: Poison pp_printf. (dump_decl_name): Avoid use of pp_printf. (dump_block_node): Likewise. (dump_generic_node): Likewise.