]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
libstdc++: Ensure headers used by fast_float are included
authorPatrick Palka <ppalka@redhat.com>
Wed, 12 Apr 2023 16:40:41 +0000 (12:40 -0400)
committerPatrick Palka <ppalka@redhat.com>
Wed, 12 Apr 2023 16:40:41 +0000 (12:40 -0400)
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 (this header also pulls in <cstdint>)
  3. <system_error> since std::errc is naturally already available
     from <charconv>

This avoids potential fast_float build failures on platforms for which
some required headers (in particular <cstdint>) end up not getting
transitively included from elsewhere.

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

index 5d18ca32dbb3b23d71b0f194e6af935ed6d01766..3a411cf546a2f496c2675c05f9eb701378cf9e5c 100644 (file)
 // 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>