From 59890c13343af9e308281b3c76bac425087f4f8a Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Tue, 17 Dec 2024 11:29:16 +0100 Subject: [PATCH] [libc++] Granularize includes (#119964) --- libcxx/include/__algorithm/inplace_merge.h | 1 - libcxx/include/__algorithm/stable_partition.h | 1 - libcxx/include/__algorithm/stable_sort.h | 1 - libcxx/include/__exception/exception_ptr.h | 1 - libcxx/include/__functional/function.h | 1 - libcxx/include/__memory/allocator.h | 3 +- .../include/__memory/builtin_new_allocator.h | 2 +- libcxx/include/__memory/ranges_construct_at.h | 1 - .../ranges_uninitialized_algorithms.h | 1 - .../include/__memory/raw_storage_iterator.h | 1 - libcxx/include/__memory/shared_ptr.h | 1 - .../__memory/uninitialized_algorithms.h | 1 - .../__memory/unique_temporary_buffer.h | 3 +- .../__memory_resource/polymorphic_allocator.h | 3 +- libcxx/include/__ostream/basic_ostream.h | 2 +- libcxx/include/__pstl/backends/libdispatch.h | 2 +- .../__pstl/cpu_algos/transform_reduce.h | 1 - libcxx/include/__pstl/handle_exception.h | 2 +- libcxx/include/__utility/no_destroy.h | 2 +- libcxx/include/__utility/small_buffer.h | 3 +- libcxx/include/exception | 1 + libcxx/include/future | 1 - libcxx/include/locale | 2 +- libcxx/include/map | 2 +- libcxx/include/module.modulemap | 6 ++- libcxx/include/optional | 1 - libcxx/include/stdexcept | 1 + libcxx/include/unordered_map | 2 +- libcxx/include/valarray | 1 - libcxx/include/variant | 1 - .../test/libcxx/transitive_includes/cxx23.csv | 52 +------------------ .../test/libcxx/transitive_includes/cxx26.csv | 51 ------------------ libcxxabi/src/cxa_default_handlers.cpp | 1 + 33 files changed, 25 insertions(+), 130 deletions(-) diff --git a/libcxx/include/__algorithm/inplace_merge.h b/libcxx/include/__algorithm/inplace_merge.h index ad3fe6a7a505..e0ccdab993da 100644 --- a/libcxx/include/__algorithm/inplace_merge.h +++ b/libcxx/include/__algorithm/inplace_merge.h @@ -29,7 +29,6 @@ #include <__memory/unique_temporary_buffer.h> #include <__utility/move.h> #include <__utility/pair.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__algorithm/stable_partition.h b/libcxx/include/__algorithm/stable_partition.h index 0438f589a39d..2ba7239a3a03 100644 --- a/libcxx/include/__algorithm/stable_partition.h +++ b/libcxx/include/__algorithm/stable_partition.h @@ -22,7 +22,6 @@ #include <__type_traits/remove_cvref.h> #include <__utility/move.h> #include <__utility/pair.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__algorithm/stable_sort.h b/libcxx/include/__algorithm/stable_sort.h index 43f591ac02b0..1111f5509bc3 100644 --- a/libcxx/include/__algorithm/stable_sort.h +++ b/libcxx/include/__algorithm/stable_sort.h @@ -24,7 +24,6 @@ #include <__type_traits/is_trivially_assignable.h> #include <__utility/move.h> #include <__utility/pair.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__exception/exception_ptr.h b/libcxx/include/__exception/exception_ptr.h index c43c005603dd..7df46a0e94dc 100644 --- a/libcxx/include/__exception/exception_ptr.h +++ b/libcxx/include/__exception/exception_ptr.h @@ -16,7 +16,6 @@ #include <__memory/construct_at.h> #include <__type_traits/decay.h> #include -#include #include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/__functional/function.h b/libcxx/include/__functional/function.h index 543be05f10f3..06d3225a6e22 100644 --- a/libcxx/include/__functional/function.h +++ b/libcxx/include/__functional/function.h @@ -38,7 +38,6 @@ #include <__utility/piecewise_construct.h> #include <__utility/swap.h> #include <__verbose_abort> -#include #include #include diff --git a/libcxx/include/__memory/allocator.h b/libcxx/include/__memory/allocator.h index 1fcaf6402667..a7066885a978 100644 --- a/libcxx/include/__memory/allocator.h +++ b/libcxx/include/__memory/allocator.h @@ -16,13 +16,14 @@ #include <__memory/addressof.h> #include <__memory/allocate_at_least.h> #include <__memory/allocator_traits.h> +#include <__new/allocate.h> +#include <__new/exceptions.h> #include <__type_traits/is_const.h> #include <__type_traits/is_constant_evaluated.h> #include <__type_traits/is_same.h> #include <__type_traits/is_void.h> #include <__type_traits/is_volatile.h> #include <__utility/forward.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory/builtin_new_allocator.h b/libcxx/include/__memory/builtin_new_allocator.h index b1611b12bff0..cde1a6025a9a 100644 --- a/libcxx/include/__memory/builtin_new_allocator.h +++ b/libcxx/include/__memory/builtin_new_allocator.h @@ -12,7 +12,7 @@ #include <__config> #include <__cstddef/size_t.h> #include <__memory/unique_ptr.h> -#include +#include <__new/allocate.h> #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory/ranges_construct_at.h b/libcxx/include/__memory/ranges_construct_at.h index b7523d4ba4b8..35ed79651000 100644 --- a/libcxx/include/__memory/ranges_construct_at.h +++ b/libcxx/include/__memory/ranges_construct_at.h @@ -22,7 +22,6 @@ #include <__utility/declval.h> #include <__utility/forward.h> #include <__utility/move.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory/ranges_uninitialized_algorithms.h b/libcxx/include/__memory/ranges_uninitialized_algorithms.h index 4815ac6e5de9..57a7a4616826 100644 --- a/libcxx/include/__memory/ranges_uninitialized_algorithms.h +++ b/libcxx/include/__memory/ranges_uninitialized_algorithms.h @@ -25,7 +25,6 @@ #include <__ranges/dangling.h> #include <__type_traits/remove_reference.h> #include <__utility/move.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory/raw_storage_iterator.h b/libcxx/include/__memory/raw_storage_iterator.h index 2ee4c074d8d3..a81d93275f7c 100644 --- a/libcxx/include/__memory/raw_storage_iterator.h +++ b/libcxx/include/__memory/raw_storage_iterator.h @@ -16,7 +16,6 @@ #include <__iterator/iterator_traits.h> #include <__memory/addressof.h> #include <__utility/move.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory/shared_ptr.h b/libcxx/include/__memory/shared_ptr.h index 4fa75af4ccc8..97e4031499ed 100644 --- a/libcxx/include/__memory/shared_ptr.h +++ b/libcxx/include/__memory/shared_ptr.h @@ -57,7 +57,6 @@ #include <__utility/move.h> #include <__utility/swap.h> #include <__verbose_abort> -#include #include #if _LIBCPP_HAS_ATOMIC_HEADER # include <__atomic/memory_order.h> diff --git a/libcxx/include/__memory/uninitialized_algorithms.h b/libcxx/include/__memory/uninitialized_algorithms.h index 25d192c77188..9587f01f64d5 100644 --- a/libcxx/include/__memory/uninitialized_algorithms.h +++ b/libcxx/include/__memory/uninitialized_algorithms.h @@ -37,7 +37,6 @@ #include <__utility/exception_guard.h> #include <__utility/move.h> #include <__utility/pair.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory/unique_temporary_buffer.h b/libcxx/include/__memory/unique_temporary_buffer.h index 4f47c84e2f8d..ca6292338c00 100644 --- a/libcxx/include/__memory/unique_temporary_buffer.h +++ b/libcxx/include/__memory/unique_temporary_buffer.h @@ -16,8 +16,9 @@ #include <__cstddef/ptrdiff_t.h> #include <__memory/allocator.h> #include <__memory/unique_ptr.h> +#include <__new/allocate.h> +#include <__new/global_new_delete.h> #include <__type_traits/is_constant_evaluated.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__memory_resource/polymorphic_allocator.h b/libcxx/include/__memory_resource/polymorphic_allocator.h index 30fa5c2170d5..2dec9788852c 100644 --- a/libcxx/include/__memory_resource/polymorphic_allocator.h +++ b/libcxx/include/__memory_resource/polymorphic_allocator.h @@ -15,9 +15,10 @@ #include <__cstddef/max_align_t.h> #include <__fwd/pair.h> #include <__memory_resource/memory_resource.h> +#include <__new/exceptions.h> +#include <__new/placement_new_delete.h> #include <__utility/exception_guard.h> #include -#include #include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/__ostream/basic_ostream.h b/libcxx/include/__ostream/basic_ostream.h index ad43c72a3c2e..6d24171bc0d6 100644 --- a/libcxx/include/__ostream/basic_ostream.h +++ b/libcxx/include/__ostream/basic_ostream.h @@ -16,6 +16,7 @@ # include <__exception/operations.h> # include <__memory/shared_ptr.h> # include <__memory/unique_ptr.h> +# include <__new/exceptions.h> # include <__ostream/put_character_sequence.h> # include <__system_error/error_code.h> # include <__type_traits/conjunction.h> @@ -26,7 +27,6 @@ # include # include # include -# include // for __throw_bad_alloc # include # include diff --git a/libcxx/include/__pstl/backends/libdispatch.h b/libcxx/include/__pstl/backends/libdispatch.h index 701367b505c8..4c63c4c84420 100644 --- a/libcxx/include/__pstl/backends/libdispatch.h +++ b/libcxx/include/__pstl/backends/libdispatch.h @@ -23,6 +23,7 @@ #include <__memory/allocator.h> #include <__memory/construct_at.h> #include <__memory/unique_ptr.h> +#include <__new/exceptions.h> #include <__numeric/reduce.h> #include <__pstl/backend_fwd.h> #include <__pstl/cpu_algos/any_of.h> @@ -38,7 +39,6 @@ #include <__utility/exception_guard.h> #include <__utility/move.h> #include <__utility/pair.h> -#include #include _LIBCPP_PUSH_MACROS diff --git a/libcxx/include/__pstl/cpu_algos/transform_reduce.h b/libcxx/include/__pstl/cpu_algos/transform_reduce.h index e9f622d832cd..abd9d42a6f2e 100644 --- a/libcxx/include/__pstl/cpu_algos/transform_reduce.h +++ b/libcxx/include/__pstl/cpu_algos/transform_reduce.h @@ -20,7 +20,6 @@ #include <__type_traits/is_arithmetic.h> #include <__type_traits/is_execution_policy.h> #include <__utility/move.h> -#include #include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/__pstl/handle_exception.h b/libcxx/include/__pstl/handle_exception.h index 57dfcfde4554..3b5fca86902b 100644 --- a/libcxx/include/__pstl/handle_exception.h +++ b/libcxx/include/__pstl/handle_exception.h @@ -10,9 +10,9 @@ #define _LIBCPP___PSTL_HANDLE_EXCEPTION_H #include <__config> +#include <__new/exceptions.h> #include <__utility/forward.h> #include <__utility/move.h> -#include // __throw_bad_alloc #include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/__utility/no_destroy.h b/libcxx/include/__utility/no_destroy.h index 8edd194577d7..16f424ae119c 100644 --- a/libcxx/include/__utility/no_destroy.h +++ b/libcxx/include/__utility/no_destroy.h @@ -10,9 +10,9 @@ #define _LIBCPP___UTILITY_NO_DESTROY_H #include <__config> +#include <__new/placement_new_delete.h> #include <__type_traits/is_constant_evaluated.h> #include <__utility/forward.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/__utility/small_buffer.h b/libcxx/include/__utility/small_buffer.h index 405c0aed4596..ff6e7e76f14f 100644 --- a/libcxx/include/__utility/small_buffer.h +++ b/libcxx/include/__utility/small_buffer.h @@ -13,12 +13,13 @@ #include <__cstddef/byte.h> #include <__cstddef/size_t.h> #include <__memory/construct_at.h> +#include <__new/allocate.h> +#include <__new/launder.h> #include <__type_traits/decay.h> #include <__type_traits/is_trivially_constructible.h> #include <__type_traits/is_trivially_destructible.h> #include <__utility/exception_guard.h> #include <__utility/forward.h> -#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) # pragma GCC system_header diff --git a/libcxx/include/exception b/libcxx/include/exception index f0eaba1295fa..6565f1b4641d 100644 --- a/libcxx/include/exception +++ b/libcxx/include/exception @@ -93,6 +93,7 @@ template void rethrow_if_nested(const E& e); # if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include +# include # include # endif #endif // 0 diff --git a/libcxx/include/future b/libcxx/include/future index dacf2c10a199..3a612d80bc85 100644 --- a/libcxx/include/future +++ b/libcxx/include/future @@ -407,7 +407,6 @@ template struct uses_allocator, Alloc>; # include <__utility/forward.h> # include <__utility/move.h> # include <__utility/swap.h> -# include # include # include # include diff --git a/libcxx/include/locale b/libcxx/include/locale index 65b1200df061..8421dc696106 100644 --- a/libcxx/include/locale +++ b/libcxx/include/locale @@ -207,6 +207,7 @@ template class messages_byname; # include <__locale> # include <__locale_dir/pad_and_output.h> # include <__memory/unique_ptr.h> +# include <__new/exceptions.h> # include <__type_traits/make_unsigned.h> # include # include @@ -214,7 +215,6 @@ template class messages_byname; # include # include # include -# include # include # include diff --git a/libcxx/include/map b/libcxx/include/map index 4e964d2265b4..90f807f89bdc 100644 --- a/libcxx/include/map +++ b/libcxx/include/map @@ -591,6 +591,7 @@ erase_if(multimap& c, Predicate pred); // C++20 # include <__memory/pointer_traits.h> # include <__memory/unique_ptr.h> # include <__memory_resource/polymorphic_allocator.h> +# include <__new/launder.h> # include <__node_handle> # include <__ranges/concepts.h> # include <__ranges/container_compatible_range.h> @@ -604,7 +605,6 @@ erase_if(multimap& c, Predicate pred); // C++20 # include <__utility/pair.h> # include <__utility/piecewise_construct.h> # include <__utility/swap.h> -# include // for std::launder # include # include # include diff --git a/libcxx/include/module.modulemap b/libcxx/include/module.modulemap index ba45af273f48..a5546ddadea6 100644 --- a/libcxx/include/module.modulemap +++ b/libcxx/include/module.modulemap @@ -1607,7 +1607,11 @@ module std [system] { module allocate { header "__new/allocate.h" } module destroying_delete_t { header "__new/destroying_delete_t.h" } module exceptions { header "__new/exceptions.h" } - module global_new_delete { header "__new/global_new_delete.h" } + module global_new_delete { + header "__new/global_new_delete.h" + + export std.new.nothrow_t + } module interference_size { header "__new/interference_size.h" } module launder { header "__new/launder.h" } module new_handler { header "__new/new_handler.h" } diff --git a/libcxx/include/optional b/libcxx/include/optional index b19c7a21aea3..1556b8b8fd94 100644 --- a/libcxx/include/optional +++ b/libcxx/include/optional @@ -228,7 +228,6 @@ namespace std { # include <__utility/swap.h> # include <__verbose_abort> # include -# include # include // standard-mandated includes diff --git a/libcxx/include/stdexcept b/libcxx/include/stdexcept index b3d805437a02..58c55092026a 100644 --- a/libcxx/include/stdexcept +++ b/libcxx/include/stdexcept @@ -284,6 +284,7 @@ _LIBCPP_END_NAMESPACE_STD # include # include # include +# include # endif #endif // 0 diff --git a/libcxx/include/unordered_map b/libcxx/include/unordered_map index 5d5979b28ff0..e55b7b7ef140 100644 --- a/libcxx/include/unordered_map +++ b/libcxx/include/unordered_map @@ -602,6 +602,7 @@ template # include <__memory/pointer_traits.h> # include <__memory/unique_ptr.h> # include <__memory_resource/polymorphic_allocator.h> +# include <__new/launder.h> # include <__node_handle> # include <__ranges/concepts.h> # include <__ranges/container_compatible_range.h> @@ -615,7 +616,6 @@ template # include <__type_traits/type_identity.h> # include <__utility/forward.h> # include <__utility/pair.h> -# include // launder # include # include # include diff --git a/libcxx/include/valarray b/libcxx/include/valarray index af916096b5ef..ef94dde9bc88 100644 --- a/libcxx/include/valarray +++ b/libcxx/include/valarray @@ -364,7 +364,6 @@ template unspecified2 end(const valarray& v); # include <__utility/move.h> # include <__utility/swap.h> # include -# include # include // standard-mandated includes diff --git a/libcxx/include/variant b/libcxx/include/variant index fd91bd293910..7d2788e2414e 100644 --- a/libcxx/include/variant +++ b/libcxx/include/variant @@ -268,7 +268,6 @@ namespace std { # include <__verbose_abort> # include # include -# include # include // standard-mandated includes diff --git a/libcxx/test/libcxx/transitive_includes/cxx23.csv b/libcxx/test/libcxx/transitive_includes/cxx23.csv index 838ed411a7e3..17972b845374 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx23.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx23.csv @@ -9,7 +9,6 @@ algorithm cwctype algorithm initializer_list algorithm iosfwd algorithm limits -algorithm new algorithm optional algorithm ratio algorithm tuple @@ -18,7 +17,6 @@ any cstdint any cstring any initializer_list any limits -any new any typeinfo any version array cctype @@ -58,7 +56,6 @@ bitset cwctype bitset initializer_list bitset iosfwd bitset limits -bitset new bitset stdexcept bitset string bitset string_view @@ -86,7 +83,6 @@ ccomplex iosfwd ccomplex istream ccomplex limits ccomplex locale -ccomplex new ccomplex ratio ccomplex sstream ccomplex stdexcept @@ -125,7 +121,6 @@ chrono iosfwd chrono istream chrono limits chrono locale -chrono new chrono optional chrono ratio chrono sstream @@ -153,7 +148,6 @@ codecvt cwctype codecvt initializer_list codecvt iosfwd codecvt limits -codecvt new codecvt stdexcept codecvt string codecvt string_view @@ -184,7 +178,6 @@ complex iosfwd complex istream complex limits complex locale -complex new complex ratio complex sstream complex stdexcept @@ -203,7 +196,6 @@ condition_variable cstring condition_variable ctime condition_variable initializer_list condition_variable limits -condition_variable new condition_variable ratio condition_variable typeinfo condition_variable version @@ -235,7 +227,6 @@ ctgmath iosfwd ctgmath istream ctgmath limits ctgmath locale -ctgmath new ctgmath ratio ctgmath sstream ctgmath stdexcept @@ -256,13 +247,11 @@ deque cwchar deque cwctype deque initializer_list deque limits -deque new deque stdexcept deque tuple deque version exception cstdint exception cstdlib -exception new exception typeinfo exception version execution version @@ -290,7 +279,6 @@ experimental/iterator iosfwd experimental/iterator iterator experimental/iterator limits experimental/iterator locale -experimental/iterator new experimental/iterator ratio experimental/iterator stdexcept experimental/iterator streambuf @@ -336,7 +324,6 @@ filesystem ios filesystem iosfwd filesystem limits filesystem locale -filesystem new filesystem ratio filesystem stdexcept filesystem streambuf @@ -354,7 +341,6 @@ flat_map cwchar flat_map cwctype flat_map initializer_list flat_map limits -flat_map new flat_map optional flat_map stdexcept flat_map tuple @@ -376,7 +362,6 @@ format cwctype format initializer_list format iosfwd format limits -format new format optional format stdexcept format string @@ -391,7 +376,6 @@ forward_list cwchar forward_list cwctype forward_list initializer_list forward_list limits -forward_list new forward_list tuple forward_list version fstream bitset @@ -416,7 +400,6 @@ fstream iosfwd fstream istream fstream limits fstream locale -fstream new fstream ratio fstream stdexcept fstream streambuf @@ -434,7 +417,6 @@ functional cwchar functional cwctype functional initializer_list functional limits -functional new functional optional functional stdexcept functional tuple @@ -461,7 +443,6 @@ future iosfwd future istream future limits future locale -future new future ratio future sstream future stdexcept @@ -490,7 +471,6 @@ iomanip ios iomanip iosfwd iomanip limits iomanip locale -iomanip new iomanip ratio iomanip stdexcept iomanip streambuf @@ -515,7 +495,6 @@ ios cwctype ios initializer_list ios iosfwd ios limits -ios new ios ratio ios stdexcept ios string @@ -547,7 +526,6 @@ iostream iosfwd iostream istream iostream limits iostream locale -iostream new iostream optional iostream ostream iostream print @@ -578,7 +556,7 @@ istream ios istream iosfwd istream limits istream locale -istream new + istream ratio istream stdexcept istream streambuf @@ -598,7 +576,6 @@ iterator cwctype iterator initializer_list iterator iosfwd iterator limits -iterator new iterator variant iterator version latch climits @@ -617,7 +594,6 @@ list cwchar list cwctype list initializer_list list limits -list new list tuple list version locale cctype @@ -637,7 +613,6 @@ locale initializer_list locale ios locale iosfwd locale limits -locale new locale ratio locale stdexcept locale streambuf @@ -654,7 +629,6 @@ map cwchar map cwctype map initializer_list map limits -map new map optional map stdexcept map tuple @@ -676,7 +650,6 @@ memory cstdint memory cstring memory initializer_list memory limits -memory new memory tuple memory typeinfo memory version @@ -686,7 +659,6 @@ memory_resource compare memory_resource cstdint memory_resource ctime memory_resource limits -memory_resource new memory_resource ratio memory_resource tuple memory_resource version @@ -709,7 +681,6 @@ numeric cstring numeric ctime numeric initializer_list numeric limits -numeric new numeric optional numeric ratio numeric tuple @@ -719,7 +690,6 @@ optional cstdint optional cstring optional initializer_list optional limits -optional new optional version ostream array ostream bitset @@ -743,7 +713,6 @@ ostream ios ostream iosfwd ostream limits ostream locale -ostream new ostream optional ostream print ostream ratio @@ -772,7 +741,6 @@ print format print initializer_list print iosfwd print limits -print new print optional print stdexcept print string @@ -797,7 +765,6 @@ queue deque queue initializer_list queue iosfwd queue limits -queue new queue stdexcept queue string queue string_view @@ -818,7 +785,6 @@ random cwctype random initializer_list random iosfwd random limits -random new random numeric random optional random ratio @@ -839,7 +805,6 @@ ranges initializer_list ranges iosfwd ranges iterator ranges limits -ranges new ranges optional ranges span ranges stdexcept @@ -866,7 +831,6 @@ regex deque regex initializer_list regex iosfwd regex limits -regex new regex stdexcept regex string regex string_view @@ -894,7 +858,6 @@ set cwchar set cwctype set initializer_list set limits -set new set optional set tuple set version @@ -931,7 +894,6 @@ sstream iosfwd sstream istream sstream limits sstream locale -sstream new sstream ratio sstream stdexcept sstream streambuf @@ -949,7 +911,6 @@ stack cwctype stack deque stack initializer_list stack limits -stack new stack stdexcept stack tuple stack version @@ -978,7 +939,6 @@ streambuf initializer_list streambuf ios streambuf iosfwd streambuf limits -streambuf new streambuf ratio streambuf stdexcept streambuf string @@ -997,7 +957,6 @@ string cwctype string initializer_list string iosfwd string limits -string new string stdexcept string string_view string tuple @@ -1034,7 +993,6 @@ strstream iosfwd strstream istream strstream limits strstream locale -strstream new strstream ratio strstream stdexcept strstream streambuf @@ -1066,7 +1024,6 @@ syncstream iosfwd syncstream limits syncstream locale syncstream map -syncstream new syncstream optional syncstream ostream syncstream print @@ -1091,7 +1048,6 @@ system_error cwctype system_error initializer_list system_error iosfwd system_error limits -system_error new system_error stdexcept system_error string system_error string_view @@ -1119,7 +1075,6 @@ thread iosfwd thread istream thread limits thread locale -thread new thread ratio thread sstream thread stdexcept @@ -1147,7 +1102,6 @@ unordered_map cstdint unordered_map cstring unordered_map initializer_list unordered_map limits -unordered_map new unordered_map optional unordered_map stdexcept unordered_map tuple @@ -1157,7 +1111,6 @@ unordered_set cstdint unordered_set cstring unordered_set initializer_list unordered_set limits -unordered_set new unordered_set optional unordered_set tuple unordered_set version @@ -1170,14 +1123,12 @@ valarray cmath valarray cstdint valarray initializer_list valarray limits -valarray new valarray version variant compare variant cstdint variant cstring variant initializer_list variant limits -variant new variant version vector array vector cctype @@ -1195,7 +1146,6 @@ vector cwctype vector initializer_list vector iosfwd vector limits -vector new vector stdexcept vector string vector string_view diff --git a/libcxx/test/libcxx/transitive_includes/cxx26.csv b/libcxx/test/libcxx/transitive_includes/cxx26.csv index cb48eb32c26b..00ab78e61a45 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx26.csv +++ b/libcxx/test/libcxx/transitive_includes/cxx26.csv @@ -9,7 +9,6 @@ algorithm cwctype algorithm initializer_list algorithm iosfwd algorithm limits -algorithm new algorithm optional algorithm ratio algorithm tuple @@ -18,7 +17,6 @@ any cstdint any cstring any initializer_list any limits -any new any typeinfo any version array cctype @@ -58,7 +56,6 @@ bitset cwctype bitset initializer_list bitset iosfwd bitset limits -bitset new bitset stdexcept bitset string bitset string_view @@ -86,7 +83,6 @@ ccomplex iosfwd ccomplex istream ccomplex limits ccomplex locale -ccomplex new ccomplex ratio ccomplex sstream ccomplex stdexcept @@ -125,7 +121,6 @@ chrono iosfwd chrono istream chrono limits chrono locale -chrono new chrono optional chrono ratio chrono sstream @@ -153,7 +148,6 @@ codecvt cwctype codecvt initializer_list codecvt iosfwd codecvt limits -codecvt new codecvt stdexcept codecvt string codecvt string_view @@ -184,7 +178,6 @@ complex iosfwd complex istream complex limits complex locale -complex new complex ratio complex sstream complex stdexcept @@ -203,7 +196,6 @@ condition_variable cstring condition_variable ctime condition_variable initializer_list condition_variable limits -condition_variable new condition_variable ratio condition_variable typeinfo condition_variable version @@ -235,7 +227,6 @@ ctgmath iosfwd ctgmath istream ctgmath limits ctgmath locale -ctgmath new ctgmath ratio ctgmath sstream ctgmath stdexcept @@ -256,13 +247,11 @@ deque cwchar deque cwctype deque initializer_list deque limits -deque new deque stdexcept deque tuple deque version exception cstdint exception cstdlib -exception new exception typeinfo exception version execution version @@ -290,7 +279,6 @@ experimental/iterator iosfwd experimental/iterator iterator experimental/iterator limits experimental/iterator locale -experimental/iterator new experimental/iterator ratio experimental/iterator stdexcept experimental/iterator streambuf @@ -336,7 +324,6 @@ filesystem ios filesystem iosfwd filesystem limits filesystem locale -filesystem new filesystem ratio filesystem stdexcept filesystem streambuf @@ -354,7 +341,6 @@ flat_map cwchar flat_map cwctype flat_map initializer_list flat_map limits -flat_map new flat_map optional flat_map stdexcept flat_map tuple @@ -376,7 +362,6 @@ format cwctype format initializer_list format iosfwd format limits -format new format optional format stdexcept format string @@ -391,7 +376,6 @@ forward_list cwchar forward_list cwctype forward_list initializer_list forward_list limits -forward_list new forward_list tuple forward_list version fstream bitset @@ -415,7 +399,6 @@ fstream iosfwd fstream istream fstream limits fstream locale -fstream new fstream ratio fstream stdexcept fstream streambuf @@ -433,7 +416,6 @@ functional cwchar functional cwctype functional initializer_list functional limits -functional new functional optional functional stdexcept functional tuple @@ -460,7 +442,6 @@ future iosfwd future istream future limits future locale -future new future ratio future sstream future stdexcept @@ -489,7 +470,6 @@ iomanip ios iomanip iosfwd iomanip limits iomanip locale -iomanip new iomanip ratio iomanip stdexcept iomanip streambuf @@ -514,7 +494,6 @@ ios cwctype ios initializer_list ios iosfwd ios limits -ios new ios ratio ios stdexcept ios string @@ -546,7 +525,6 @@ iostream iosfwd iostream istream iostream limits iostream locale -iostream new iostream optional iostream ostream iostream print @@ -577,7 +555,6 @@ istream ios istream iosfwd istream limits istream locale -istream new istream ratio istream stdexcept istream streambuf @@ -597,7 +574,6 @@ iterator cwctype iterator initializer_list iterator iosfwd iterator limits -iterator new iterator variant iterator version latch climits @@ -616,7 +592,6 @@ list cwchar list cwctype list initializer_list list limits -list new list tuple list version locale cctype @@ -636,7 +611,6 @@ locale initializer_list locale ios locale iosfwd locale limits -locale new locale ratio locale stdexcept locale streambuf @@ -653,7 +627,6 @@ map cwchar map cwctype map initializer_list map limits -map new map optional map stdexcept map tuple @@ -675,7 +648,6 @@ memory cstdint memory cstring memory initializer_list memory limits -memory new memory tuple memory typeinfo memory version @@ -685,7 +657,6 @@ memory_resource compare memory_resource cstdint memory_resource ctime memory_resource limits -memory_resource new memory_resource ratio memory_resource tuple memory_resource version @@ -708,7 +679,6 @@ numeric cstring numeric ctime numeric initializer_list numeric limits -numeric new numeric optional numeric ratio numeric tuple @@ -718,7 +688,6 @@ optional cstdint optional cstring optional initializer_list optional limits -optional new optional version ostream array ostream bitset @@ -742,7 +711,6 @@ ostream ios ostream iosfwd ostream limits ostream locale -ostream new ostream optional ostream print ostream ratio @@ -771,7 +739,6 @@ print format print initializer_list print iosfwd print limits -print new print optional print stdexcept print string @@ -796,7 +763,6 @@ queue deque queue initializer_list queue iosfwd queue limits -queue new queue stdexcept queue string queue string_view @@ -817,7 +783,6 @@ random cwctype random initializer_list random iosfwd random limits -random new random numeric random optional random ratio @@ -838,7 +803,6 @@ ranges initializer_list ranges iosfwd ranges iterator ranges limits -ranges new ranges optional ranges span ranges stdexcept @@ -865,7 +829,6 @@ regex deque regex initializer_list regex iosfwd regex limits -regex new regex stdexcept regex string regex string_view @@ -893,7 +856,6 @@ set cwchar set cwctype set initializer_list set limits -set new set optional set tuple set version @@ -930,7 +892,6 @@ sstream iosfwd sstream istream sstream limits sstream locale -sstream new sstream ratio sstream stdexcept sstream streambuf @@ -948,7 +909,6 @@ stack cwctype stack deque stack initializer_list stack limits -stack new stack stdexcept stack tuple stack version @@ -977,7 +937,6 @@ streambuf initializer_list streambuf ios streambuf iosfwd streambuf limits -streambuf new streambuf ratio streambuf stdexcept streambuf string @@ -996,7 +955,6 @@ string cwctype string initializer_list string iosfwd string limits -string new string stdexcept string string_view string tuple @@ -1033,7 +991,6 @@ strstream iosfwd strstream istream strstream limits strstream locale -strstream new strstream ratio strstream stdexcept strstream streambuf @@ -1065,7 +1022,6 @@ syncstream iosfwd syncstream limits syncstream locale syncstream map -syncstream new syncstream optional syncstream ostream syncstream print @@ -1090,7 +1046,6 @@ system_error cwctype system_error initializer_list system_error iosfwd system_error limits -system_error new system_error stdexcept system_error string system_error string_view @@ -1118,7 +1073,6 @@ thread iosfwd thread istream thread limits thread locale -thread new thread ratio thread sstream thread stdexcept @@ -1146,7 +1100,6 @@ unordered_map cstdint unordered_map cstring unordered_map initializer_list unordered_map limits -unordered_map new unordered_map optional unordered_map stdexcept unordered_map tuple @@ -1156,7 +1109,6 @@ unordered_set cstdint unordered_set cstring unordered_set initializer_list unordered_set limits -unordered_set new unordered_set optional unordered_set tuple unordered_set version @@ -1169,14 +1121,12 @@ valarray cmath valarray cstdint valarray initializer_list valarray limits -valarray new valarray version variant compare variant cstdint variant cstring variant initializer_list variant limits -variant new variant version vector array vector cctype @@ -1194,7 +1144,6 @@ vector cwctype vector initializer_list vector iosfwd vector limits -vector new vector stdexcept vector string vector string_view diff --git a/libcxxabi/src/cxa_default_handlers.cpp b/libcxxabi/src/cxa_default_handlers.cpp index 52b1aacae993..b029982ea87c 100644 --- a/libcxxabi/src/cxa_default_handlers.cpp +++ b/libcxxabi/src/cxa_default_handlers.cpp @@ -10,6 +10,7 @@ //===----------------------------------------------------------------------===// #include +#include #include "abort_message.h" #include "cxxabi.h" #include "cxa_handlers.h"