https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77299
--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> --- If it weren't for those *_MIN macros or NULL in C, we could have a hack that we ignore system headers flag from macro locus if a macro in system headers expands to a single token (e.g. in C++ NULL expands to __null or INT_MAX to 0x7fffffff etc. So, do we want instead some pragma to temporarily do the opposite of #pragma GCC system_header and another one to undo it? Because deciding what warning/error should be reported against the header that defines a macro and what against the uses of the macro is otherwise extremely specific to a particular diagnostics and how exactly the macros look like.