https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69543
Lewis Hyatt <lhyatt at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
See Also| |https://gcc.gnu.org/bugzill
| |a/show_bug.cgi?id=97498
CC| |lhyatt at gcc dot gnu.org
--- Comment #20 from Lewis Hyatt <lhyatt at gcc dot gnu.org> ---
See PR97498 which is closely related to this. It seems that the use of
input_location while handling diagnostic pragmas is problematic in other cases
besides the one discussed here (i.e. also when processing a diagnostic pop.)
Here is a test case from that PR, which breaks because of the input_location
workaround discussed here though:
======
static void f() {} _Pragma("GCC diagnostic error \"-Wunused-function\"")
======
The above errors for C but not C++, because in C, input_location points to the
start of the line and so it takes effect too early.