https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118820
Bug ID: 118820 Summary: [12/13/14/15 Regression] preprocessor output with #pragma inside a #pragma is incorrect Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: pinskia at gcc dot gnu.org Target Milestone: --- Take: ``` #pragma redefine_extname _Pragma ("pack(bar)") ``` When using -E we get: ``` # 0 "<built-in>" # 0 "<command-line>" # 1 "/usr/include/stdc-predef.h" 1 3 4 # 0 "<command-line>" 2 # 1 "/app/example.cpp" #pragma redefine_extname # 1 "/app/example.cpp" #pragma pack(bar) # 1 "/app/example.cpp" ``` Which is wrong. The _Pragma should be spelled that way and on the same line as the first #pragma.