From fc1a001921c9c37b4d4dcaf180998aefb4037b8e Mon Sep 17 00:00:00 2001 From: David Malcolm <dmalcolm@redhat.com> Date: Thu, 24 Oct 2024 11:47:30 -0400 Subject: [PATCH] Add comment about pp_format to diagnostic_context::report_diagnostic No functional change intended. gcc/ChangeLog: * diagnostic.cc (diagnostic_context::report_diagnostic): Add comment about interaction of this code with pretty-print formatting phaes. Signed-off-by: David Malcolm <dmalcolm@redhat.com> --- gcc/diagnostic.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gcc/diagnostic.cc b/gcc/diagnostic.cc index f1cfb3a16867..712300896573 100644 --- a/gcc/diagnostic.cc +++ b/gcc/diagnostic.cc @@ -1341,7 +1341,14 @@ diagnostic_context::report_diagnostic (diagnostic_info *diagnostic) m_output_format->on_begin_group (); m_diagnostic_groups.m_emission_count++; + /* Run phases 1 and 2 of formatting the message. + In particular, some format codes may have side-effects here which need to + happen before sending the diagnostic to the output format. + + For example, Fortran's %C and %L formatting codes populate the + rich_location. */ pp_format (m_printer, &diagnostic->message); + /* Call vfunc in the output format. This is responsible for phase 3 of formatting, and for printing the result. */ m_output_format->on_report_diagnostic (*diagnostic, orig_diag_kind); -- GitLab