diff --git a/libcxx/include/__expected/bad_expected_access.h b/libcxx/include/__expected/bad_expected_access.h --- a/libcxx/include/__expected/bad_expected_access.h +++ b/libcxx/include/__expected/bad_expected_access.h @@ -10,10 +10,9 @@ #define _LIBCPP___EXPECTED_BAD_EXPECTED_ACCESS_H #include <__config> +#include <__exception/exception.h> #include <__utility/move.h> -#include - #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header #endif diff --git a/libcxx/include/__format/buffer.h b/libcxx/include/__format/buffer.h --- a/libcxx/include/__format/buffer.h +++ b/libcxx/include/__format/buffer.h @@ -27,6 +27,7 @@ #include <__iterator/incrementable_traits.h> #include <__iterator/iterator_traits.h> #include <__iterator/wrap_iter.h> +#include <__memory/addressof.h> #include <__type_traits/add_pointer.h> #include <__utility/move.h> #include diff --git a/libcxx/include/__functional/function.h b/libcxx/include/__functional/function.h --- a/libcxx/include/__functional/function.h +++ b/libcxx/include/__functional/function.h @@ -12,6 +12,7 @@ #include <__assert> #include <__config> +#include <__exception/exception.h> #include <__functional/binary_function.h> #include <__functional/invoke.h> #include <__functional/unary_function.h> @@ -32,7 +33,6 @@ #include <__utility/piecewise_construct.h> #include <__utility/swap.h> #include <__verbose_abort> -#include #include #include #include diff --git a/libcxx/include/__ranges/join_view.h b/libcxx/include/__ranges/join_view.h --- a/libcxx/include/__ranges/join_view.h +++ b/libcxx/include/__ranges/join_view.h @@ -22,6 +22,7 @@ #include <__iterator/iterator_traits.h> #include <__iterator/iterator_with_data.h> #include <__iterator/segmented_iterator.h> +#include <__memory/addressof.h> #include <__ranges/access.h> #include <__ranges/all.h> #include <__ranges/concepts.h> diff --git a/libcxx/include/functional b/libcxx/include/functional --- a/libcxx/include/functional +++ b/libcxx/include/functional @@ -543,7 +543,6 @@ #include <__functional/unary_negate.h> #include <__functional/unwrap_ref.h> #include <__utility/forward.h> -#include #include // TODO: find out why removing this breaks the modules build #include #include @@ -555,6 +554,7 @@ #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include +# include # include # include # include diff --git a/libcxx/include/future b/libcxx/include/future --- a/libcxx/include/future +++ b/libcxx/include/future @@ -366,6 +366,7 @@ #include <__chrono/duration.h> #include <__chrono/time_point.h> #include <__config> +#include <__exception/exception_ptr.h> #include <__memory/allocator_arg_t.h> #include <__memory/allocator_destructor.h> #include <__memory/shared_ptr.h> @@ -377,8 +378,6 @@ #include <__utility/auto_cast.h> #include <__utility/forward.h> #include <__utility/move.h> -#include <__verbose_abort> -#include #include #include #include @@ -2461,6 +2460,7 @@ #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include +# include #endif #endif // _LIBCPP_FUTURE diff --git a/libcxx/include/map b/libcxx/include/map --- a/libcxx/include/map +++ b/libcxx/include/map @@ -549,6 +549,7 @@ #include <__iterator/erase_if_container.h> #include <__iterator/iterator_traits.h> #include <__iterator/reverse_iterator.h> +#include <__memory/addressof.h> #include <__memory/allocator.h> #include <__memory_resource/polymorphic_allocator.h> #include <__node_handle> diff --git a/libcxx/include/new b/libcxx/include/new --- a/libcxx/include/new +++ b/libcxx/include/new @@ -89,13 +89,14 @@ #include <__assert> // all public C++ headers provide the assertion handler #include <__availability> #include <__config> +#include <__exception/exception.h> +#include <__type_traits/alignment_of.h> #include <__type_traits/is_function.h> #include <__type_traits/is_same.h> #include <__type_traits/remove_cv.h> #include <__verbose_abort> #include #include -#include #include #if defined(_LIBCPP_ABI_VCRUNTIME) @@ -365,6 +366,7 @@ _LIBCPP_END_NAMESPACE_STD #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include #endif diff --git a/libcxx/include/ostream b/libcxx/include/ostream --- a/libcxx/include/ostream +++ b/libcxx/include/ostream @@ -165,6 +165,7 @@ #include <__assert> // all public C++ headers provide the assertion handler #include <__config> +#include <__exception/operations.h> #include <__memory/shared_ptr.h> #include <__memory/unique_ptr.h> #include <__type_traits/conjunction.h> diff --git a/libcxx/include/stdexcept b/libcxx/include/stdexcept --- a/libcxx/include/stdexcept +++ b/libcxx/include/stdexcept @@ -43,9 +43,8 @@ #include <__assert> // all public C++ headers provide the assertion handler #include <__config> -#include <__verbose_abort> +#include <__exception/exception.h> #include -#include #include // for string forward decl #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) @@ -300,4 +299,8 @@ _LIBCPP_END_NAMESPACE_STD +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include +#endif + #endif // _LIBCPP_STDEXCEPT diff --git a/libcxx/include/thread b/libcxx/include/thread --- a/libcxx/include/thread +++ b/libcxx/include/thread @@ -85,7 +85,9 @@ #include <__assert> // all public C++ headers provide the assertion handler #include <__config> +#include <__exception/terminate.h> #include <__functional/hash.h> +#include <__memory/addressof.h> #include <__memory/unique_ptr.h> #include <__mutex_base> #include <__thread/poll_with_backoff.h> diff --git a/libcxx/include/typeinfo b/libcxx/include/typeinfo --- a/libcxx/include/typeinfo +++ b/libcxx/include/typeinfo @@ -59,12 +59,12 @@ #include <__assert> // all public C++ headers provide the assertion handler #include <__availability> #include <__config> +#include <__exception/exception.h> #include <__type_traits/is_constant_evaluated.h> #include <__verbose_abort> #include #include #include -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header @@ -415,6 +415,7 @@ _LIBCPP_END_NAMESPACE_STD #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include #endif diff --git a/libcxx/include/variant b/libcxx/include/variant --- a/libcxx/include/variant +++ b/libcxx/include/variant @@ -210,6 +210,7 @@ #include <__compare/compare_three_way_result.h> #include <__compare/three_way_comparable.h> #include <__config> +#include <__exception/exception.h> #include <__functional/hash.h> #include <__functional/invoke.h> #include <__functional/operations.h> @@ -239,7 +240,6 @@ #include <__utility/swap.h> #include <__variant/monostate.h> #include <__verbose_abort> -#include #include #include #include @@ -1834,6 +1834,7 @@ _LIBCPP_POP_MACROS #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include # include # include # include diff --git a/libcxx/test/libcxx/transitive_includes/cxx03.csv b/libcxx/test/libcxx/transitive_includes/cxx03.csv --- a/libcxx/test/libcxx/transitive_includes/cxx03.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx03.csv @@ -213,7 +213,6 @@ execution version expected cstddef expected cstdlib -expected exception 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 --- a/libcxx/test/libcxx/transitive_includes/cxx11.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx11.csv @@ -213,7 +213,6 @@ execution version expected cstddef expected cstdlib -expected exception 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 --- a/libcxx/test/libcxx/transitive_includes/cxx14.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx14.csv @@ -213,7 +213,6 @@ execution version expected cstddef expected cstdlib -expected exception 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 --- a/libcxx/test/libcxx/transitive_includes/cxx17.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx17.csv @@ -213,7 +213,6 @@ execution version expected cstddef expected cstdlib -expected exception 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 --- a/libcxx/test/libcxx/transitive_includes/cxx20.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx20.csv @@ -220,7 +220,6 @@ execution version expected cstddef expected cstdlib -expected exception 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 --- a/libcxx/test/libcxx/transitive_includes/cxx2b.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx2b.csv @@ -151,7 +151,6 @@ execution version expected cstddef expected cstdlib -expected exception expected initializer_list expected new expected version @@ -277,7 +276,6 @@ functional cstdint functional cstdlib functional cstring -functional exception functional initializer_list functional iosfwd functional limits @@ -293,7 +291,6 @@ future cstdint future cstdlib future cstring -future exception future initializer_list future iosfwd future limits @@ -420,7 +417,6 @@ mutex version new cstddef new cstdlib -new exception new version numbers version numeric cmath @@ -548,7 +544,6 @@ stack initializer_list stack version stdexcept cstdlib -stdexcept exception stdexcept iosfwd streambuf cstdint streambuf ios @@ -618,7 +613,6 @@ typeinfo cstddef typeinfo cstdint typeinfo cstdlib -typeinfo exception unordered_map cmath unordered_map compare unordered_map cstddef @@ -663,7 +657,6 @@ variant cstddef variant cstdint variant cstring -variant exception variant initializer_list variant limits variant new diff --git a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp --- a/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp +++ b/libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp @@ -55,13 +55,14 @@ // that terminate has been called) -#include #include -#include +#include #include -#include +#include #include -#include +#include +#include +#include #include "make_test_thread.h" diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp --- a/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp +++ b/libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.destr/dtor.pass.cpp @@ -15,10 +15,11 @@ // ~thread(); -#include -#include -#include #include +#include +#include +#include +#include #include "make_test_thread.h" #include "test_macros.h"