https://gcc.gnu.org/bugzilla/show_bug.cgi?id=128311
Bug ID: 128311
Summary: [17 regression] Build fails with libgdiagnostics (?)
because of missing <string>
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Keywords: build
Severity: normal
Priority: P3
Component: libgdiagnostics
Assignee: dmalcolm at gcc dot gnu.org
Reporter: sjames at gcc dot gnu.org
CC: schwab at gcc dot gnu.org
Target Milestone: ---
r17-5669-g4a6c15e64ea599 breaks the build with:
[20:30] <sam_> In file included from
/var/tmp/portage/sys-devel/gcc-17.0.9999/work/gcc-17.0.9999/gcc/print-rtl.cc:57:
[20:30] <sam_>
/var/tmp/portage/sys-devel/gcc-17.0.9999/work/gcc-17.0.9999/gcc/json.h:226:57:
error: ‘std::string’ has not been declared
[20:30] <sam_> 226 | const json::string *set_string (const char *key,
std::string utf8_value);
[20:30] <sam_> |
^~~~~~
Andreas Schwab noticed this too:
https://gcc.gnu.org/pipermail/gcc-patches/2026-October/736705.html
We would need to either #define INCLUDE_STRING before all consumers of json.h,
or perhaps just do it unconditionally. I can do whatever if we can decide on an
option.