https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90400
--- Comment #7 from Tobias Burnus <burnus at gcc dot gnu.org> --- (In reply to Tobias Burnus from comment #6) > Created attachment 51700 [details] > Draft patch for the 'gcc -E' / 'gcc -save-temps' issue > > This solves the -E / -save-temps preprocessing issue. > > For the non -E issue, it could be the issue described at PR 91669. Regarding "-E": Actually, looking at PR103165 comment 2, I note that for the example there 'clang -E' outputs: "hello; \"\" _Pragma(\"GCC diagnostic pop\") world;" that is: While the macros are replaced, the (unknown) _Pragma remains as _Pragma - such that it is then later only processed when running the compiler. No idea whether that makes sense or not not - just as observation.