[libcxx-commits] [libcxx] 75196f8 - [libc++] Remove <cstdlib> includes
Nikolas Klauser via libcxx-commits
libcxx-commits at lists.llvm.org
Sat Apr 8 17:52:39 PDT 2023
Author: Nikolas Klauser
Date: 2023-04-09T02:52:33+02:00
New Revision: 75196f8e72be3f18c5a831e23f385c4ae3eb62b5
URL: https://github.com/llvm/llvm-project/commit/75196f8e72be3f18c5a831e23f385c4ae3eb62b5
DIFF: https://github.com/llvm/llvm-project/commit/75196f8e72be3f18c5a831e23f385c4ae3eb62b5.diff
LOG: [libc++] Remove <cstdlib> includes
We changed the `abort` calls when trying to throw exceptions in `-fno-exceptions` mode to `__verbose_abort` calls, which removes the dependency in most files.
Reviewed By: ldionne, #libc
Spies: dim, emaste, mikhail.ramalho, smeenai, libcxx-commits
Differential Revision: https://reviews.llvm.org/D146076
Added:
Modified:
libcxx/include/__bit/byteswap.h
libcxx/include/__expected/expected.h
libcxx/include/__filesystem/directory_entry.h
libcxx/include/__iterator/advance.h
libcxx/include/__locale
libcxx/include/__memory/shared_ptr.h
libcxx/include/algorithm
libcxx/include/any
libcxx/include/array
libcxx/include/bit
libcxx/include/bitset
libcxx/include/charconv
libcxx/include/deque
libcxx/include/experimental/memory_resource
libcxx/include/filesystem
libcxx/include/forward_list
libcxx/include/fstream
libcxx/include/functional
libcxx/include/future
libcxx/include/iterator
libcxx/include/list
libcxx/include/map
libcxx/include/memory
libcxx/include/ostream
libcxx/include/queue
libcxx/include/random
libcxx/include/ranges
libcxx/include/regex
libcxx/include/set
libcxx/include/stdexcept
libcxx/include/string
libcxx/include/string_view
libcxx/include/typeinfo
libcxx/include/unordered_map
libcxx/include/unordered_set
libcxx/include/valarray
libcxx/include/vector
libcxx/test/libcxx/transitive_includes/cxx03.csv
libcxx/test/libcxx/transitive_includes/cxx11.csv
libcxx/test/libcxx/transitive_includes/cxx14.csv
libcxx/test/libcxx/transitive_includes/cxx17.csv
libcxx/test/libcxx/transitive_includes/cxx20.csv
libcxx/test/libcxx/transitive_includes/cxx2b.csv
libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval.pass.cpp
libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval_param.pass.cpp
Removed:
################################################################################
diff --git a/libcxx/include/__bit/byteswap.h b/libcxx/include/__bit/byteswap.h
index 59fba781f7ce9..b290e80a5c681 100644
--- a/libcxx/include/__bit/byteswap.h
+++ b/libcxx/include/__bit/byteswap.h
@@ -13,7 +13,6 @@
#include <__concepts/arithmetic.h>
#include <__config>
#include <cstdint>
-#include <cstdlib>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
diff --git a/libcxx/include/__expected/expected.h b/libcxx/include/__expected/expected.h
index 9a8d4047cdefa..3ff8fbc7b2110 100644
--- a/libcxx/include/__expected/expected.h
+++ b/libcxx/include/__expected/expected.h
@@ -50,7 +50,6 @@
#include <__utility/move.h>
#include <__utility/swap.h>
#include <__verbose_abort>
-#include <cstdlib> // for std::abort
#include <initializer_list>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
diff --git a/libcxx/include/__filesystem/directory_entry.h b/libcxx/include/__filesystem/directory_entry.h
index b17eaaab4c545..77aaa74bdf558 100644
--- a/libcxx/include/__filesystem/directory_entry.h
+++ b/libcxx/include/__filesystem/directory_entry.h
@@ -23,7 +23,6 @@
#include <__filesystem/perms.h>
#include <__utility/unreachable.h>
#include <cstdint>
-#include <cstdlib>
#include <iosfwd>
#include <system_error>
diff --git a/libcxx/include/__iterator/advance.h b/libcxx/include/__iterator/advance.h
index 1d55a69948bc1..4e852bb1ffd67 100644
--- a/libcxx/include/__iterator/advance.h
+++ b/libcxx/include/__iterator/advance.h
@@ -23,7 +23,6 @@
#include <__utility/declval.h>
#include <__utility/move.h>
#include <__utility/unreachable.h>
-#include <cstdlib>
#include <limits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
diff --git a/libcxx/include/__locale b/libcxx/include/__locale
index e0ffa0ca00ffe..9b548d738d181 100644
--- a/libcxx/include/__locale
+++ b/libcxx/include/__locale
@@ -14,6 +14,7 @@
#include <__config>
#include <cctype>
#include <cstdint>
+#include <cstdlib>
#include <locale.h>
#include <mutex>
#include <string>
diff --git a/libcxx/include/__memory/shared_ptr.h b/libcxx/include/__memory/shared_ptr.h
index f22a918cd536e..1d72eb64466e5 100644
--- a/libcxx/include/__memory/shared_ptr.h
+++ b/libcxx/include/__memory/shared_ptr.h
@@ -49,7 +49,6 @@
#include <__utility/swap.h>
#include <__verbose_abort>
#include <cstddef>
-#include <cstdlib> // abort
#include <iosfwd>
#include <new>
#include <stdexcept>
diff --git a/libcxx/include/algorithm b/libcxx/include/algorithm
index 75ba4b240dc00..9970a63706b21 100644
--- a/libcxx/include/algorithm
+++ b/libcxx/include/algorithm
@@ -1929,6 +1929,7 @@ template <class BidirectionalIterator, class Compare>
# include <atomic>
# include <bit>
# include <concepts>
+# include <cstdlib>
# include <cstring>
# include <iterator>
# include <memory>
diff --git a/libcxx/include/any b/libcxx/include/any
index e139756f65f4c..963e5e019038e 100644
--- a/libcxx/include/any
+++ b/libcxx/include/any
@@ -107,7 +107,6 @@ namespace std {
#include <__utility/move.h>
#include <__utility/unreachable.h>
#include <__verbose_abort>
-#include <cstdlib>
#include <initializer_list>
#include <typeinfo>
#include <version>
@@ -718,6 +717,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <iosfwd>
# include <iterator>
# include <memory>
diff --git a/libcxx/include/array b/libcxx/include/array
index 218ad3dd186f5..09a3fe41f47d0 100644
--- a/libcxx/include/array
+++ b/libcxx/include/array
@@ -544,6 +544,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <algorithm>
# include <concepts>
+# include <cstdlib>
# include <iterator>
# include <type_traits>
# include <utility>
diff --git a/libcxx/include/bit b/libcxx/include/bit
index d17a6e45f0db7..6b35bb2c7a0bc 100644
--- a/libcxx/include/bit
+++ b/libcxx/include/bit
@@ -83,6 +83,7 @@ namespace std {
#endif
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
+# include <cstdlib>
# include <iosfwd>
# include <limits>
# include <type_traits>
diff --git a/libcxx/include/bitset b/libcxx/include/bitset
index ac866fa6e0c39..fc8ffb882e6d5 100644
--- a/libcxx/include/bitset
+++ b/libcxx/include/bitset
@@ -1154,6 +1154,7 @@ _LIBCPP_POP_MACROS
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
# include <type_traits>
#endif
diff --git a/libcxx/include/charconv b/libcxx/include/charconv
index c30210fb52b0a..5608e51ac5e8e 100644
--- a/libcxx/include/charconv
+++ b/libcxx/include/charconv
@@ -83,7 +83,6 @@ namespace std {
#include <__errc>
#include <cmath> // for log2f
#include <cstdint>
-#include <cstdlib>
#include <limits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -96,6 +95,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
# include <cstring>
# include <iosfwd>
# include <type_traits>
diff --git a/libcxx/include/deque b/libcxx/include/deque
index 0f896bb231227..515c9600081c5 100644
--- a/libcxx/include/deque
+++ b/libcxx/include/deque
@@ -2456,6 +2456,7 @@ _LIBCPP_POP_MACROS
# include <algorithm>
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iosfwd>
# include <iterator>
diff --git a/libcxx/include/experimental/memory_resource b/libcxx/include/experimental/memory_resource
index f9edd3077f558..dcb61e39d3a67 100644
--- a/libcxx/include/experimental/memory_resource
+++ b/libcxx/include/experimental/memory_resource
@@ -69,7 +69,6 @@ namespace pmr {
#include <__type_traits/aligned_storage.h>
#include <__utility/move.h>
#include <cstddef>
-#include <cstdlib>
#include <experimental/__config>
#include <experimental/__memory>
#include <limits>
@@ -432,6 +431,7 @@ _LIBCPP_POP_MACROS
# include <atomic>
# include <climits>
# include <concepts>
+# include <cstdlib>
# include <cstring>
# include <ctime>
# include <iterator>
diff --git a/libcxx/include/filesystem b/libcxx/include/filesystem
index 8d01a81c6137c..d7678e11ca6b4 100644
--- a/libcxx/include/filesystem
+++ b/libcxx/include/filesystem
@@ -467,6 +467,7 @@ inline constexpr bool std::ranges::enable_view<std::filesystem::recursive_direct
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
#endif
#endif // _LIBCPP_FILESYSTEM
diff --git a/libcxx/include/forward_list b/libcxx/include/forward_list
index e22968d49ed81..ad616d14796de 100644
--- a/libcxx/include/forward_list
+++ b/libcxx/include/forward_list
@@ -1822,6 +1822,7 @@ _LIBCPP_POP_MACROS
# include <algorithm>
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iosfwd>
# include <iterator>
diff --git a/libcxx/include/fstream b/libcxx/include/fstream
index b38b25567c50b..09deccf85a3b5 100644
--- a/libcxx/include/fstream
+++ b/libcxx/include/fstream
@@ -188,7 +188,6 @@ typedef basic_fstream<wchar_t> wfstream;
#include <__utility/swap.h>
#include <__utility/unreachable.h>
#include <cstdio>
-#include <cstdlib>
#include <istream>
#include <ostream>
#include <typeinfo>
@@ -1752,6 +1751,7 @@ _LIBCPP_POP_MACROS
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <iosfwd>
# include <limits>
# include <new>
diff --git a/libcxx/include/functional b/libcxx/include/functional
index 489b70d6462cf..05d42fcff232e 100644
--- a/libcxx/include/functional
+++ b/libcxx/include/functional
@@ -554,6 +554,7 @@ POLICY: For non-variadic implementations, the number of arguments is limited
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <exception>
# include <tuple>
# include <type_traits>
diff --git a/libcxx/include/future b/libcxx/include/future
index eb05c59211b93..ab554f292b2c6 100644
--- a/libcxx/include/future
+++ b/libcxx/include/future
@@ -2460,6 +2460,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
+# include <cstdlib>
# include <exception>
#endif
diff --git a/libcxx/include/iterator b/libcxx/include/iterator
index d07ebcb074f9f..c4bec919d5b48 100644
--- a/libcxx/include/iterator
+++ b/libcxx/include/iterator
@@ -732,6 +732,7 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
#endif
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
+# include <cstdlib>
# include <exception>
# include <new>
# include <type_traits>
diff --git a/libcxx/include/list b/libcxx/include/list
index f925f542d41be..6969d3c4f3068 100644
--- a/libcxx/include/list
+++ b/libcxx/include/list
@@ -2402,6 +2402,7 @@ _LIBCPP_POP_MACROS
# include <algorithm>
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iosfwd>
# include <iterator>
diff --git a/libcxx/include/map b/libcxx/include/map
index 9fbb5332a428a..75de40b3876e8 100644
--- a/libcxx/include/map
+++ b/libcxx/include/map
@@ -2404,6 +2404,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iterator>
# include <type_traits>
diff --git a/libcxx/include/memory b/libcxx/include/memory
index f6063178edc08..24344d8ab4f0e 100644
--- a/libcxx/include/memory
+++ b/libcxx/include/memory
@@ -921,6 +921,7 @@ template<size_t N, class T>
# include <concepts>
# include <cstddef>
# include <cstdint>
+# include <cstdlib>
# include <cstring>
# include <iosfwd>
# include <iterator>
diff --git a/libcxx/include/ostream b/libcxx/include/ostream
index dbb54ac7e1a26..753bec1d2c900 100644
--- a/libcxx/include/ostream
+++ b/libcxx/include/ostream
@@ -1197,6 +1197,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <iterator>
# include <type_traits>
#endif
diff --git a/libcxx/include/queue b/libcxx/include/queue
index 35cceb5168959..9690aaf18c9a5 100644
--- a/libcxx/include/queue
+++ b/libcxx/include/queue
@@ -963,6 +963,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <type_traits>
#endif
diff --git a/libcxx/include/random b/libcxx/include/random
index 5fe4906cb0270..02d71ad6dd25c 100644
--- a/libcxx/include/random
+++ b/libcxx/include/random
@@ -1734,6 +1734,7 @@ class piecewise_linear_distribution
# include <concepts>
# include <cstddef>
# include <cstdint>
+# include <cstdlib>
# include <iosfwd>
# include <limits>
# include <numeric>
diff --git a/libcxx/include/ranges b/libcxx/include/ranges
index f9a94a136cfbe..6adb28b09240d 100644
--- a/libcxx/include/ranges
+++ b/libcxx/include/ranges
@@ -399,6 +399,7 @@ namespace std {
#endif
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
+# include <cstdlib>
# include <type_traits>
#endif
diff --git a/libcxx/include/regex b/libcxx/include/regex
index 9a367c3aabe79..f89b8289ff4a2 100644
--- a/libcxx/include/regex
+++ b/libcxx/include/regex
@@ -6879,6 +6879,7 @@ _LIBCPP_POP_MACROS
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <iosfwd>
# include <iterator>
# include <new>
diff --git a/libcxx/include/set b/libcxx/include/set
index 289e35ae41bbc..05bffe6357074 100644
--- a/libcxx/include/set
+++ b/libcxx/include/set
@@ -1598,6 +1598,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iterator>
# include <type_traits>
diff --git a/libcxx/include/stdexcept b/libcxx/include/stdexcept
index abdef87a5b0b3..8e2f985509df0 100644
--- a/libcxx/include/stdexcept
+++ b/libcxx/include/stdexcept
@@ -44,7 +44,7 @@ public:
#include <__assert> // all public C++ headers provide the assertion handler
#include <__config>
#include <__exception/exception.h>
-#include <cstdlib>
+#include <__verbose_abort>
#include <iosfwd> // for string forward decl
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -300,6 +300,7 @@ void __throw_underflow_error(const char*__msg)
_LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
+# include <cstdlib>
# include <exception>
#endif
diff --git a/libcxx/include/string b/libcxx/include/string
index 8db92de1652f0..1de3fb76ec42f 100644
--- a/libcxx/include/string
+++ b/libcxx/include/string
@@ -578,7 +578,6 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len );
#include <climits>
#include <cstdint>
#include <cstdio> // EOF
-#include <cstdlib>
#include <cstring>
#include <limits>
#include <stdexcept>
@@ -4389,6 +4388,7 @@ _LIBCPP_POP_MACROS
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <algorithm>
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iterator>
# include <new>
diff --git a/libcxx/include/string_view b/libcxx/include/string_view
index 3f5e1c4d1878e..f8cecfba94284 100644
--- a/libcxx/include/string_view
+++ b/libcxx/include/string_view
@@ -1046,6 +1046,7 @@ _LIBCPP_POP_MACROS
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <algorithm>
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iterator>
# include <type_traits>
diff --git a/libcxx/include/typeinfo b/libcxx/include/typeinfo
index 1553be1c6e107..46917654f8f54 100644
--- a/libcxx/include/typeinfo
+++ b/libcxx/include/typeinfo
@@ -64,7 +64,6 @@ public:
#include <__verbose_abort>
#include <cstddef>
#include <cstdint>
-#include <cstdlib>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
@@ -415,6 +414,7 @@ void __throw_bad_cast()
_LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
+# include <cstdlib>
# include <exception>
# include <type_traits>
#endif
diff --git a/libcxx/include/unordered_map b/libcxx/include/unordered_map
index 99d55d3bdd4da..238aa44cb2756 100644
--- a/libcxx/include/unordered_map
+++ b/libcxx/include/unordered_map
@@ -2647,6 +2647,7 @@ _LIBCPP_END_NAMESPACE_STD
# include <algorithm>
# include <bit>
# include <concepts>
+# include <cstdlib>
# include <iterator>
# include <type_traits>
#endif
diff --git a/libcxx/include/unordered_set b/libcxx/include/unordered_set
index 3d4a1f7466613..a6afb7458385f 100644
--- a/libcxx/include/unordered_set
+++ b/libcxx/include/unordered_set
@@ -1817,6 +1817,7 @@ _LIBCPP_END_NAMESPACE_STD
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <concepts>
+# include <cstdlib>
# include <functional>
# include <iterator>
# include <type_traits>
diff --git a/libcxx/include/valarray b/libcxx/include/valarray
index 3007d5c478aee..c5ed1525e6137 100644
--- a/libcxx/include/valarray
+++ b/libcxx/include/valarray
@@ -4935,6 +4935,7 @@ _LIBCPP_POP_MACROS
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <algorithm>
# include <concepts>
+# include <cstdlib>
# include <cstring>
# include <functional>
# include <type_traits>
diff --git a/libcxx/include/vector b/libcxx/include/vector
index 2361ba8e215ff..40f73b8c1ec83 100644
--- a/libcxx/include/vector
+++ b/libcxx/include/vector
@@ -317,7 +317,6 @@ template<class T, class charT> requires is-vector-bool-reference<T> // Since C++
#include <__utility/move.h>
#include <__utility/swap.h>
#include <climits>
-#include <cstdlib>
#include <cstring>
#include <iosfwd> // for forward declaration of vector
#include <limits>
@@ -3362,6 +3361,7 @@ _LIBCPP_POP_MACROS
# include <algorithm>
# include <atomic>
# include <concepts>
+# include <cstdlib>
# include <type_traits>
# include <typeinfo>
# include <utility>
diff --git a/libcxx/test/libcxx/transitive_includes/cxx03.csv b/libcxx/test/libcxx/transitive_includes/cxx03.csv
index f8995327e5146..3223ab48cf7e3 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx03.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx03.csv
@@ -212,7 +212,6 @@ exception type_traits
exception version
execution version
expected cstddef
-expected cstdlib
expected initializer_list
expected new
expected version
diff --git a/libcxx/test/libcxx/transitive_includes/cxx11.csv b/libcxx/test/libcxx/transitive_includes/cxx11.csv
index 33f39ae09b322..1cc6e3ac53053 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx11.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx11.csv
@@ -212,7 +212,6 @@ exception type_traits
exception version
execution version
expected cstddef
-expected cstdlib
expected initializer_list
expected new
expected version
diff --git a/libcxx/test/libcxx/transitive_includes/cxx14.csv b/libcxx/test/libcxx/transitive_includes/cxx14.csv
index d51c0c38f5354..d7499184088f7 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx14.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx14.csv
@@ -212,7 +212,6 @@ exception type_traits
exception version
execution version
expected cstddef
-expected cstdlib
expected initializer_list
expected new
expected version
diff --git a/libcxx/test/libcxx/transitive_includes/cxx17.csv b/libcxx/test/libcxx/transitive_includes/cxx17.csv
index d51c0c38f5354..d7499184088f7 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx17.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx17.csv
@@ -212,7 +212,6 @@ exception type_traits
exception version
execution version
expected cstddef
-expected cstdlib
expected initializer_list
expected new
expected version
diff --git a/libcxx/test/libcxx/transitive_includes/cxx20.csv b/libcxx/test/libcxx/transitive_includes/cxx20.csv
index 522b2eb79eef7..8926711792526 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx20.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx20.csv
@@ -219,7 +219,6 @@ exception type_traits
exception version
execution version
expected cstddef
-expected cstdlib
expected initializer_list
expected new
expected version
diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b.csv b/libcxx/test/libcxx/transitive_includes/cxx2b.csv
index 3e02d8d48f47c..efac40b2139cf 100644
--- a/libcxx/test/libcxx/transitive_includes/cxx2b.csv
+++ b/libcxx/test/libcxx/transitive_includes/cxx2b.csv
@@ -1,7 +1,6 @@
algorithm climits
algorithm cstddef
algorithm cstdint
-algorithm cstdlib
algorithm cstring
algorithm initializer_list
algorithm iosfwd
@@ -10,7 +9,6 @@ algorithm new
algorithm version
any cstddef
any cstdint
-any cstdlib
any cstring
any initializer_list
any limits
@@ -20,7 +18,6 @@ any typeinfo
any version
array compare
array cstddef
-array cstdlib
array initializer_list
array limits
array stdexcept
@@ -44,13 +41,11 @@ barrier new
barrier ratio
barrier version
bit cstdint
-bit cstdlib
bit limits
bit version
bitset climits
bitset cstddef
bitset cstdint
-bitset cstdlib
bitset cstring
bitset initializer_list
bitset iosfwd
@@ -64,7 +59,6 @@ charconv cerrno
charconv cmath
charconv cstddef
charconv cstdint
-charconv cstdlib
charconv initializer_list
charconv limits
chrono array
@@ -92,6 +86,7 @@ cmath version
codecvt cctype
codecvt cstddef
codecvt cstdint
+codecvt cstdlib
codecvt cstring
codecvt mutex
codecvt string
@@ -109,7 +104,6 @@ complex version
concepts cstddef
concepts version
condition_variable cstddef
-condition_variable cstdlib
condition_variable ctime
condition_variable iosfwd
condition_variable limits
@@ -133,7 +127,6 @@ cwctype cctype
deque compare
deque cstddef
deque cstdint
-deque cstdlib
deque cstring
deque initializer_list
deque limits
@@ -146,7 +139,6 @@ exception cstdlib
exception version
execution version
expected cstddef
-expected cstdlib
expected initializer_list
expected new
expected version
@@ -162,7 +154,6 @@ experimental/list list
experimental/map experimental/memory_resource
experimental/map map
experimental/memory_resource cstddef
-experimental/memory_resource cstdlib
experimental/memory_resource experimental/utility
experimental/memory_resource limits
experimental/memory_resource new
@@ -213,7 +204,6 @@ filesystem cerrno
filesystem compare
filesystem cstddef
filesystem cstdint
-filesystem cstdlib
filesystem ctime
filesystem iomanip
filesystem iosfwd
@@ -245,7 +235,6 @@ format version
forward_list compare
forward_list cstddef
forward_list cstdint
-forward_list cstdlib
forward_list cstring
forward_list initializer_list
forward_list limits
@@ -270,7 +259,6 @@ fstream version
functional array
functional cstddef
functional cstdint
-functional cstdlib
functional cstring
functional initializer_list
functional iosfwd
@@ -304,6 +292,7 @@ iomanip version
ios cctype
ios cstddef
ios cstdint
+ios cstdlib
ios cstring
ios iosfwd
ios mutex
@@ -323,7 +312,6 @@ istream version
iterator compare
iterator concepts
iterator cstddef
-iterator cstdlib
iterator initializer_list
iterator iosfwd
iterator limits
@@ -341,7 +329,6 @@ limits version
list compare
list cstddef
list cstdint
-list cstdlib
list cstring
list initializer_list
list limits
@@ -367,7 +354,6 @@ locale string
locale version
map compare
map cstddef
-map cstdlib
map initializer_list
map limits
map new
@@ -378,7 +364,6 @@ map version
memory compare
memory cstddef
memory cstdint
-memory cstdlib
memory cstring
memory initializer_list
memory iosfwd
@@ -398,7 +383,6 @@ memory_resource tuple
memory_resource version
mutex cstddef
mutex cstdint
-mutex cstdlib
mutex ctime
mutex iosfwd
mutex limits
@@ -429,7 +413,6 @@ optional version
ostream bitset
ostream cstddef
ostream cstdint
-ostream cstdlib
ostream cstring
ostream initializer_list
ostream ios
@@ -443,7 +426,6 @@ ostream typeinfo
ostream version
queue compare
queue cstddef
-queue cstdlib
queue deque
queue initializer_list
queue limits
@@ -452,7 +434,6 @@ queue version
random cmath
random cstddef
random cstdint
-random cstdlib
random initializer_list
random iosfwd
random limits
@@ -462,7 +443,6 @@ random vector
random version
ranges compare
ranges cstddef
-ranges cstdlib
ranges initializer_list
ranges iosfwd
ranges iterator
@@ -505,7 +485,6 @@ semaphore ratio
semaphore version
set compare
set cstddef
-set cstdlib
set initializer_list
set limits
set new
@@ -538,7 +517,6 @@ stack cstddef
stack deque
stack initializer_list
stack version
-stdexcept cstdlib
stdexcept iosfwd
streambuf cstdint
streambuf ios
@@ -549,7 +527,6 @@ string compare
string cstddef
string cstdint
string cstdio
-string cstdlib
string cstring
string cwchar
string initializer_list
@@ -564,7 +541,6 @@ string_view compare
string_view cstddef
string_view cstdint
string_view cstdio
-string_view cstdlib
string_view cstring
string_view cwchar
string_view initializer_list
@@ -612,12 +588,10 @@ typeindex typeinfo
typeindex version
typeinfo cstddef
typeinfo cstdint
-typeinfo cstdlib
unordered_map cmath
unordered_map compare
unordered_map cstddef
unordered_map cstdint
-unordered_map cstdlib
unordered_map cstring
unordered_map initializer_list
unordered_map limits
@@ -630,7 +604,6 @@ unordered_set cmath
unordered_set compare
unordered_set cstddef
unordered_set cstdint
-unordered_set cstdlib
unordered_set cstring
unordered_set initializer_list
unordered_set limits
@@ -647,7 +620,6 @@ utility version
valarray cmath
valarray cstddef
valarray cstdint
-valarray cstdlib
valarray initializer_list
valarray limits
valarray new
@@ -666,7 +638,6 @@ vector climits
vector compare
vector cstddef
vector cstdint
-vector cstdlib
vector cstring
vector initializer_list
vector iosfwd
diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval.pass.cpp
index 578a66c7c1c0c..762acd4650335 100644
--- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval.pass.cpp
+++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval.pass.cpp
@@ -17,6 +17,7 @@
#include <cassert>
#include <cstdint>
+#include <cstdlib>
#include <random>
#include <vector>
diff --git a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval_param.pass.cpp b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval_param.pass.cpp
index f058e681e41c7..cee3dbfb6f643 100644
--- a/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval_param.pass.cpp
+++ b/libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.discrete/eval_param.pass.cpp
@@ -15,11 +15,10 @@
// template<class _URNG> result_type operator()(_URNG& g, const param_type& parm);
+#include <cassert>
+#include <cstdlib>
#include <random>
#include <vector>
-#include <cassert>
-
-#include "test_macros.h"
int main(int, char**)
{
More information about the libcxx-commits
mailing list