diff options
author | Patrick Palka <ppalka@redhat.com> | 2023-04-12 12:40:41 -0400 |
---|---|---|
committer | Patrick Palka <ppalka@redhat.com> | 2023-04-12 12:40:41 -0400 |
commit | 13669111e7219ed1f71b2079c7b5794c11f6e3ce (patch) | |
tree | 3ef7871e012d30729ecaf3010dd2852d62330804 | |
parent | e5656d27b8bbcedd79f23ca1510ff0a4f03fc819 (diff) | |
download | gcc-13669111e7219ed1f71b2079c7b5794c11f6e3ce.zip gcc-13669111e7219ed1f71b2079c7b5794c11f6e3ce.tar.gz gcc-13669111e7219ed1f71b2079c7b5794c11f6e3ce.tar.bz2 |
libstdc++: Ensure headers used by fast_float are included
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>.
-rw-r--r-- | libstdc++-v3/src/c++17/floating_from_chars.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libstdc++-v3/src/c++17/floating_from_chars.cc b/libstdc++-v3/src/c++17/floating_from_chars.cc index 5d18ca3..3a411cf 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> |