From: David Malcolm Date: Mon, 23 Jun 2025 15:06:33 +0000 (-0400) Subject: diagnostics: handle pp_token::kind::event_id in experimental-html sink [PR116792] X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5a64c96cfe7a4d5783319c2fb8472bc75d702e9a;p=thirdparty%2Fgcc.git diagnostics: handle pp_token::kind::event_id in experimental-html sink [PR116792] gcc/ChangeLog: PR other/116792 * diagnostic-format-html.cc (html_token_printer::print_tokens): Handle pp_token::kind::event_id. (selftest::test_token_printer): Add coverage of printing an event id. Signed-off-by: David Malcolm --- diff --git a/gcc/diagnostic-format-html.cc b/gcc/diagnostic-format-html.cc index 45d088150dd..5668b50a91a 100644 --- a/gcc/diagnostic-format-html.cc +++ b/gcc/diagnostic-format-html.cc @@ -799,6 +799,16 @@ public: case pp_token::kind::end_url: m_xp.pop_tag ("a"); break; + + case pp_token::kind::event_id: + { + pp_token_event_id *sub = as_a (iter); + gcc_assert (sub->m_event_id.known_p ()); + m_xp.add_text ("("); + m_xp.add_text (std::to_string (sub->m_event_id.one_based ())); + m_xp.add_text (")"); + } + break; } } @@ -1375,6 +1385,15 @@ test_token_printer () "'" "\n"); } + + { + token_printer_test t; + diagnostic_event_id_t event_id (0); + pp_printf (&t.m_pp, "foo %@ bar", &event_id); + ASSERT_XML_PRINT_EQ + (t.m_top_element, + "
foo (1) bar
\n"); + } } /* A subclass of html_output_format for writing selftests.