https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118697
Bug ID: 118697 Summary: static_assert message is not escaped Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: diagnostic Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: pinskia at gcc dot gnu.org Target Milestone: --- So there is a different behavior from the C front-end where the non-printable characters are escaped. I am not sure if this is a C or C++ front-end issue but it would be good to have them agree. Simple testcase: ``` static_assert(0, "\x1b[31mThis should be red\x1b[0m"); ``` The C front-end will escape the \x1b while the C++ front-end will just print as is.