On Wed, 12 Apr 2023 at 14:45, Patrick Palka via Libstdc++ <libstd...@gcc.gnu.org> wrote: > > This makes floating_from_chars.cc explicitly include all headers > that are used by the original fast_float amalgamation according to > r12-6647-gf5c8b82512f9d3, except: > > 1. <cctype> since fast_float doesn't seem to use anything from it > 2. <cinttypes> since fast_float doesn't seem to use anything directly > from it (as opposed to from <cstdint>) > 3. <system_error> since std::errc is naturally already available > from <charconv> > > This avoids potential build failures on platforms for which some > required headers (namely <cstdint>) end up not getting transitively > included from elsewhere. > > Tested on x86_64-pc-linux-gnu, does this look OK for trunk/12?
Yes for both, thanks. > > libstdc++-v3/ChangeLog: > > * src/c++17/floating_from_chars.cc: Include <algorithm>, > <iterator>, <limits> and <cstdint>. > --- > libstdc++-v3/src/c++17/floating_from_chars.cc | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/libstdc++-v3/src/c++17/floating_from_chars.cc > b/libstdc++-v3/src/c++17/floating_from_chars.cc > index 5d18ca32dbb..3a411cf546a 100644 > --- a/libstdc++-v3/src/c++17/floating_from_chars.cc > +++ b/libstdc++-v3/src/c++17/floating_from_chars.cc > @@ -30,14 +30,18 @@ > // Prefer to use std::pmr::string if possible, which requires the cxx11 ABI. > #define _GLIBCXX_USE_CXX11_ABI 1 > > +#include <algorithm> > #include <array> > #include <charconv> > #include <bit> > +#include <iterator> > +#include <limits> > #include <string> > #include <memory_resource> > #include <cfenv> > #include <cfloat> > #include <cmath> > +#include <cstdint> > #include <cstdlib> > #include <cstring> > #include <locale.h> > -- > 2.40.0.315.g0607f793cb >