From 8ff2d6af6906261567d8c10be62711ce899fb485 Mon Sep 17 00:00:00 2001 From: Mark de Wever Date: Sat, 20 Aug 2022 10:34:26 +0200 Subject: [PATCH] [libc++] Reduces the number of transitive includes. This defines a new policy for removal of transitive includes. The goal of the policy it to make it relatively easy to remove headers when needed, but avoid breaking developers using and vendors shipping libc++. The method used is to guard transitive includes based on the C++ language version. For the upcoming C++23 we can remove headers when we want, but for other language versions we try to keep it to a minimum. In this code the transitive include of `` is removed since D128577 introduces a header cycle between `` and ``. This cycle is indirectly required by the Standard. Our cycle dependency tool basically is a grep based tool, so it needs some hints to ignore cycles. With the input of our transitive include tests we can create a better tool. However that's out of the scope of this patch. Note the flag `_LIBCPP_REMOVE_TRANSITIVE_INCLUDES` remains unchanged. So users can still opt-out of transitives includes entirely. Reviewed By: #libc, ldionne, philnik Differential Revision: https://reviews.llvm.org/D132284 --- .../docs/DesignDocs/HeaderRemovalPolicy.rst | 74 +++++++++++++++++++ libcxx/docs/ReleaseNotes.rst | 18 +++++ libcxx/docs/index.rst | 1 + libcxx/include/algorithm | 7 +- libcxx/include/any | 4 +- libcxx/include/array | 2 +- libcxx/include/atomic | 9 ++- libcxx/include/bit | 2 +- libcxx/include/charconv | 2 +- libcxx/include/coroutine | 2 +- libcxx/include/deque | 2 +- libcxx/include/experimental/simd | 2 +- libcxx/include/experimental/unordered_map | 2 +- libcxx/include/ext/hash_map | 2 +- libcxx/include/ext/hash_set | 2 +- libcxx/include/forward_list | 2 +- libcxx/include/functional | 2 +- libcxx/include/future | 4 +- libcxx/include/iterator | 2 +- libcxx/include/list | 2 +- libcxx/include/locale | 2 +- libcxx/include/map | 2 +- libcxx/include/memory | 2 +- libcxx/include/mutex | 2 +- libcxx/include/numeric | 2 +- libcxx/include/optional | 7 +- libcxx/include/ostream | 2 +- libcxx/include/random | 2 +- libcxx/include/regex | 2 +- libcxx/include/set | 2 +- libcxx/include/span | 2 +- libcxx/include/stack | 2 +- libcxx/include/string | 2 +- libcxx/include/string_view | 2 +- libcxx/include/thread | 7 +- libcxx/include/tuple | 2 +- libcxx/include/typeindex | 2 +- libcxx/include/unordered_map | 2 +- libcxx/include/unordered_set | 2 +- libcxx/include/utility | 2 +- libcxx/include/valarray | 2 +- libcxx/include/variant | 2 +- libcxx/include/vector | 2 +- .../cxx20/expected.algorithm | 1 - .../transitive_includes/cxx20/expected.any | 1 - .../transitive_includes/cxx20/expected.array | 1 - .../transitive_includes/cxx20/expected.atomic | 1 - .../cxx20/expected.barrier | 1 - .../transitive_includes/cxx20/expected.bitset | 1 - .../cxx20/expected.ccomplex | 1 - .../cxx20/expected.codecvt | 1 - .../cxx20/expected.complex | 1 - .../cxx20/expected.condition_variable | 1 - .../cxx20/expected.ctgmath | 1 - .../transitive_includes/cxx20/expected.deque | 1 - .../cxx20/expected.experimental_algorithm | 1 - .../cxx20/expected.experimental_coroutine | 1 - .../cxx20/expected.experimental_deque | 1 - .../cxx20/expected.experimental_forward_list | 1 - .../cxx20/expected.experimental_functional | 1 - .../cxx20/expected.experimental_list | 1 - .../cxx20/expected.experimental_map | 1 - .../expected.experimental_memory_resource | 1 - .../cxx20/expected.experimental_regex | 1 - .../cxx20/expected.experimental_set | 1 - .../cxx20/expected.experimental_simd | 1 - .../cxx20/expected.experimental_string | 1 - .../cxx20/expected.experimental_unordered_map | 1 - .../cxx20/expected.experimental_unordered_set | 1 - .../cxx20/expected.experimental_vector | 1 - .../cxx20/expected.ext_hash_map | 1 - .../cxx20/expected.ext_hash_set | 1 - .../cxx20/expected.filesystem | 1 - .../transitive_includes/cxx20/expected.format | 1 - .../cxx20/expected.forward_list | 1 - .../cxx20/expected.fstream | 1 - .../cxx20/expected.functional | 1 - .../transitive_includes/cxx20/expected.future | 1 - .../cxx20/expected.iomanip | 1 - .../transitive_includes/cxx20/expected.ios | 1 - .../cxx20/expected.iostream | 1 - .../cxx20/expected.istream | 1 - .../transitive_includes/cxx20/expected.latch | 1 - .../transitive_includes/cxx20/expected.list | 1 - .../transitive_includes/cxx20/expected.locale | 1 - .../transitive_includes/cxx20/expected.map | 1 - .../transitive_includes/cxx20/expected.memory | 1 - .../transitive_includes/cxx20/expected.mutex | 1 - .../cxx20/expected.numeric | 1 - .../cxx20/expected.optional | 1 - .../cxx20/expected.ostream | 1 - .../transitive_includes/cxx20/expected.queue | 1 - .../transitive_includes/cxx20/expected.random | 1 - .../transitive_includes/cxx20/expected.ranges | 1 - .../transitive_includes/cxx20/expected.regex | 1 - .../cxx20/expected.scoped_allocator | 1 - .../cxx20/expected.semaphore | 1 - .../transitive_includes/cxx20/expected.set | 1 - .../cxx20/expected.shared_mutex | 1 - .../transitive_includes/cxx20/expected.span | 1 - .../cxx20/expected.sstream | 1 - .../transitive_includes/cxx20/expected.stack | 1 - .../cxx20/expected.streambuf | 1 - .../transitive_includes/cxx20/expected.string | 1 - .../cxx20/expected.string_view | 1 - .../cxx20/expected.strstream | 1 - .../cxx20/expected.system_error | 1 - .../transitive_includes/cxx20/expected.thread | 1 - .../cxx20/expected.unordered_map | 1 - .../cxx20/expected.unordered_set | 1 - .../cxx20/expected.valarray | 1 - .../transitive_includes/cxx20/expected.vector | 1 - .../cxx2b/expected.algorithm | 4 - .../transitive_includes/cxx2b/expected.any | 4 - .../transitive_includes/cxx2b/expected.array | 15 ---- .../transitive_includes/cxx2b/expected.atomic | 3 - .../cxx2b/expected.barrier | 4 - .../transitive_includes/cxx2b/expected.bit | 1 - .../transitive_includes/cxx2b/expected.bitset | 11 --- .../cxx2b/expected.ccomplex | 11 --- .../cxx2b/expected.charconv | 1 - .../cxx2b/expected.codecvt | 11 --- .../cxx2b/expected.complex | 11 --- .../cxx2b/expected.condition_variable | 11 --- .../cxx2b/expected.coroutine | 1 - .../cxx2b/expected.ctgmath | 11 --- .../transitive_includes/cxx2b/expected.deque | 11 --- .../cxx2b/expected.experimental_algorithm | 4 - .../cxx2b/expected.experimental_coroutine | 4 - .../cxx2b/expected.experimental_deque | 10 --- .../cxx2b/expected.experimental_forward_list | 10 --- .../cxx2b/expected.experimental_functional | 6 -- .../cxx2b/expected.experimental_iterator | 2 - .../cxx2b/expected.experimental_list | 10 --- .../cxx2b/expected.experimental_map | 9 --- .../expected.experimental_memory_resource | 3 - .../cxx2b/expected.experimental_regex | 9 --- .../cxx2b/expected.experimental_set | 9 --- .../cxx2b/expected.experimental_simd | 18 ----- .../cxx2b/expected.experimental_string | 10 --- .../cxx2b/expected.experimental_unordered_map | 8 -- .../cxx2b/expected.experimental_unordered_set | 9 --- .../cxx2b/expected.experimental_utility | 1 - .../cxx2b/expected.experimental_vector | 5 -- .../cxx2b/expected.ext_hash_map | 4 - .../cxx2b/expected.ext_hash_set | 4 - .../cxx2b/expected.filesystem | 11 --- .../transitive_includes/cxx2b/expected.format | 8 -- .../cxx2b/expected.forward_list | 11 --- .../cxx2b/expected.fstream | 11 --- .../cxx2b/expected.functional | 6 -- .../transitive_includes/cxx2b/expected.future | 11 --- .../cxx2b/expected.iomanip | 11 --- .../transitive_includes/cxx2b/expected.ios | 11 --- .../cxx2b/expected.iostream | 11 --- .../cxx2b/expected.istream | 11 --- .../cxx2b/expected.iterator | 2 - .../transitive_includes/cxx2b/expected.latch | 3 - .../transitive_includes/cxx2b/expected.list | 11 --- .../transitive_includes/cxx2b/expected.locale | 11 --- .../transitive_includes/cxx2b/expected.map | 10 --- .../transitive_includes/cxx2b/expected.memory | 4 - .../transitive_includes/cxx2b/expected.mutex | 11 --- .../cxx2b/expected.numeric | 26 ------- .../cxx2b/expected.optional | 12 --- .../cxx2b/expected.ostream | 11 --- .../transitive_includes/cxx2b/expected.queue | 6 -- .../transitive_includes/cxx2b/expected.random | 9 --- .../transitive_includes/cxx2b/expected.ranges | 13 ---- .../transitive_includes/cxx2b/expected.regex | 10 --- .../cxx2b/expected.scoped_allocator | 4 - .../cxx2b/expected.semaphore | 3 - .../transitive_includes/cxx2b/expected.set | 10 --- .../cxx2b/expected.shared_mutex | 11 --- .../transitive_includes/cxx2b/expected.span | 19 ----- .../cxx2b/expected.sstream | 11 --- .../transitive_includes/cxx2b/expected.stack | 11 --- .../cxx2b/expected.streambuf | 11 --- .../transitive_includes/cxx2b/expected.string | 11 --- .../cxx2b/expected.string_view | 19 ----- .../cxx2b/expected.strstream | 11 --- .../cxx2b/expected.system_error | 11 --- .../transitive_includes/cxx2b/expected.thread | 11 --- .../transitive_includes/cxx2b/expected.tuple | 7 -- .../cxx2b/expected.typeindex | 4 - .../cxx2b/expected.unordered_map | 6 -- .../cxx2b/expected.unordered_set | 10 --- .../cxx2b/expected.utility | 1 - .../cxx2b/expected.valarray | 19 ----- .../cxx2b/expected.variant | 3 - .../transitive_includes/cxx2b/expected.vector | 6 -- libcxx/utils/graph_header_deps.py | 10 ++- 192 files changed, 162 insertions(+), 801 deletions(-) create mode 100644 libcxx/docs/DesignDocs/HeaderRemovalPolicy.rst diff --git a/libcxx/docs/DesignDocs/HeaderRemovalPolicy.rst b/libcxx/docs/DesignDocs/HeaderRemovalPolicy.rst new file mode 100644 index 000000000000..76947083866d --- /dev/null +++ b/libcxx/docs/DesignDocs/HeaderRemovalPolicy.rst @@ -0,0 +1,74 @@ +===================== +Header Removal Policy +===================== + +Policy +------ + +Libc++ is in the process of splitting larger headers into smaller modular +headers. This makes it possible to remove these large headers from other +headers. For example, instead of including ```` entirely it is +possible to only include the headers for the algorithms used. When the +Standard indirectly adds additional header includes, using the smaller headers +aids reducing the growth of top-level headers. For example ```` uses +``std::chrono::nanoseconds`` and included ````. In C++20 ```` +requires ```` which adds several other headers (like ````, +````, ````) which are not needed in ````. + +The benefit of using minimal headers is that the size of libc++'s top-level +headers becomes smaller. This improves the compilation time when users include +a top-level header. It also avoids header inclusion cycles and makes it easier +to port headers to platforms with reduced functionality. + +A disadvantage is that users unknowingly depend on these transitive includes. +Thus removing an include might break their build after upgrading a newer +version of libc++. For example, ```` is often forgotten but using +algorithms will still work through those transitive includes. This problem is +solved by modules, however in practice most people do not use modules (yet). + +To ease the removal of transitive includes in libc++, libc++ will remove +unnecessary transitive includes in newly supported C++ versions. This means +that users will have to fix their missing includes in order to upgrade to a +newer version of the Standard. Libc++ also reserves the right to remove +transitive includes at any other time, however new language versions will be +used as a convenient way to perform bulk removals of transitive includes. + +For libc++ developers, this means that any transitive include removal must be +guarded by something of the form: + +.. code-block:: cpp + + #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 + # include + # include + # include + #endif + +When users define ``_LIBCPP_REMOVE_TRANSITIVE_INCLUDES``, libc++ will not +include transitive headers, regardless of the language version. This can be +useful for users to aid the transition to a newer language version, or by users +who simply want to make sure they include what they use in their code. + +One of the issues for libc++ with transitive includes is that these includes +may create dependency cycles and cause the validation script +``libcxx/utils/graph_header_deps.py`` to have false positives. To ignore an +include from the validation script, add a comment containing ``IGNORE-CYCLE``. +This should only be used when there is a cycle and it has been verified it is a +false positive. + +.. code-block:: cpp + + #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 + # include // IGNORE-CYCLE due to + #endif + + +Rationale +--------- + +Removing headers is not only an issue for software developers, but also for +vendors. When a vendor updates libc++ several of their upstream packages might +fail to compile, forcing them to fix these packages or file a bug with their +upstream packages. Usually upgrading software to a new language standard is +done explicitly by software developers. This means they most likely will +discover and fix the missing includes, lessening the burden for the vendors. diff --git a/libcxx/docs/ReleaseNotes.rst b/libcxx/docs/ReleaseNotes.rst index a89d4cdeb620..fda4b69b3495 100644 --- a/libcxx/docs/ReleaseNotes.rst +++ b/libcxx/docs/ReleaseNotes.rst @@ -45,6 +45,24 @@ Improvements and New Features Deprecations and Removals ------------------------- +- Several incidental transitive includes have been removed from libc++. Those + includes are removed based on the language version used. Incidental transitive + inclusions of the following headers have been removed: + + - C++20: ``chrono`` + - C++2b: ``algorithm``, ``array``, ``atomic``, ``bit``, ``chrono``, + ``climits``, ``cmath``, ``compare``, ``concepts``, ``cstdlib``, + ``cstring``, ``ctime``, ``exception``, ``functional``, + ``initializer_list``, ``iosfwd``, ``iterator``, ``memory``, ``new``, + ``optional``, ``ratio``, ``stdexcept``, ``tuple``, ``typeinfo``, + ``unordered_map``, ``utility``, ``variant``, ``vector``. + + Users can also remove all incidental transitive includes by defining + ``_LIBCPP_REMOVE_TRANSITIVE_INCLUDES`` regardless of the language version + in use. Note that in the future, libc++ reserves the right to remove + incidental transitive includes more aggressively, in particular regardless + of the language version in use. + Upcoming Deprecations and Removals ---------------------------------- diff --git a/libcxx/docs/index.rst b/libcxx/docs/index.rst index 71674e75904a..4964d1356ac2 100644 --- a/libcxx/docs/index.rst +++ b/libcxx/docs/index.rst @@ -175,6 +175,7 @@ Design Documents DesignDocs/ExtendedCXX03Support DesignDocs/FeatureTestMacros DesignDocs/FileTimeType + DesignDocs/HeaderRemovalPolicy DesignDocs/NoexceptPolicy DesignDocs/ThreadingSupportAPI DesignDocs/UniquePtrTrivialAbi diff --git a/libcxx/include/algorithm b/libcxx/include/algorithm index 69ada038747c..0b54fb9a8a94 100644 --- a/libcxx/include/algorithm +++ b/libcxx/include/algorithm @@ -1899,8 +1899,11 @@ template #include <__algorithm/unwrap_iter.h> #include <__algorithm/upper_bound.h> -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES -# include +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 +# include // IGNORE-CYCLE due to +#endif + +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/any b/libcxx/include/any index b256630b0578..cd704a9543a5 100644 --- a/libcxx/include/any +++ b/libcxx/include/any @@ -94,8 +94,8 @@ namespace std { #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES -# include +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 +# include // IGNORE-CYCLE due to #endif #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/array b/libcxx/include/array index 309ae8b71568..415ac162c89d 100644 --- a/libcxx/include/array +++ b/libcxx/include/array @@ -123,7 +123,7 @@ template const T&& get(const array&&) noexce #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/atomic b/libcxx/include/atomic index 892b28a94e3e..2e920889dcdc 100644 --- a/libcxx/include/atomic +++ b/libcxx/include/atomic @@ -534,8 +534,13 @@ template # include <__threading_support> #endif -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES -# include +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 +# include // IGNORE-CYCLE due to +#endif + +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 +# include +# include #endif #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/bit b/libcxx/include/bit index c899458dc312..1505c9bd7f02 100644 --- a/libcxx/include/bit +++ b/libcxx/include/bit @@ -71,7 +71,7 @@ namespace std { #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/charconv b/libcxx/include/charconv index 4f00755a83bb..d77cf3a05156 100644 --- a/libcxx/include/charconv +++ b/libcxx/include/charconv @@ -97,7 +97,7 @@ namespace std { #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/coroutine b/libcxx/include/coroutine index 6582f5554ed0..d7ed44ee75e2 100644 --- a/libcxx/include/coroutine +++ b/libcxx/include/coroutine @@ -46,7 +46,7 @@ struct suspend_always; #include <__coroutine/trivial_awaitables.h> #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/deque b/libcxx/include/deque index 4a5136b3500f..c38b544444ed 100644 --- a/libcxx/include/deque +++ b/libcxx/include/deque @@ -185,7 +185,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/experimental/simd b/libcxx/include/experimental/simd index c474292ffcb9..532bc644a502 100644 --- a/libcxx/include/experimental/simd +++ b/libcxx/include/experimental/simd @@ -656,7 +656,7 @@ public: #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/experimental/unordered_map b/libcxx/include/experimental/unordered_map index a5627e76b2e1..db114dc1d115 100644 --- a/libcxx/include/experimental/unordered_map +++ b/libcxx/include/experimental/unordered_map @@ -45,7 +45,7 @@ namespace pmr { #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/ext/hash_map b/libcxx/include/ext/hash_map index a91716d1e622..ab5a896dd556 100644 --- a/libcxx/include/ext/hash_map +++ b/libcxx/include/ext/hash_map @@ -210,7 +210,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/ext/hash_set b/libcxx/include/ext/hash_set index 1c9b5e799aca..332d6091065c 100644 --- a/libcxx/include/ext/hash_set +++ b/libcxx/include/ext/hash_set @@ -199,7 +199,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/forward_list b/libcxx/include/forward_list index f35aa85d454c..c9fc20b30f1c 100644 --- a/libcxx/include/forward_list +++ b/libcxx/include/forward_list @@ -195,7 +195,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/functional b/libcxx/include/functional index de02059f642a..c969d7f70e3f 100644 --- a/libcxx/include/functional +++ b/libcxx/include/functional @@ -539,7 +539,7 @@ POLICY: For non-variadic implementations, the number of arguments is limited #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/future b/libcxx/include/future index 5c29b28f57f9..643600a75ba0 100644 --- a/libcxx/include/future +++ b/libcxx/include/future @@ -378,8 +378,8 @@ template struct uses_allocator, Alloc>; #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES -# include +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 +# include // IGNORE-CYCLE due to #endif #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) diff --git a/libcxx/include/iterator b/libcxx/include/iterator index 225ae815363c..6555b6d00529 100644 --- a/libcxx/include/iterator +++ b/libcxx/include/iterator @@ -724,7 +724,7 @@ template constexpr const E* data(initializer_list il) noexcept; #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/list b/libcxx/include/list index 5fcbd67c6703..668875bef717 100644 --- a/libcxx/include/list +++ b/libcxx/include/list @@ -203,7 +203,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/locale b/libcxx/include/locale index ff12f665156c..c7da7836384e 100644 --- a/libcxx/include/locale +++ b/libcxx/include/locale @@ -211,7 +211,7 @@ template class messages_byname; #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/map b/libcxx/include/map index e1d5fa8a25d8..8b21f482928a 100644 --- a/libcxx/include/map +++ b/libcxx/include/map @@ -546,7 +546,7 @@ erase_if(multimap& c, Predicate pred); // C++20 #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/memory b/libcxx/include/memory index 83046f67753c..47134a052c0a 100644 --- a/libcxx/include/memory +++ b/libcxx/include/memory @@ -887,7 +887,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/mutex b/libcxx/include/mutex index 23007b19e8b8..a8334ba34180 100644 --- a/libcxx/include/mutex +++ b/libcxx/include/mutex @@ -198,7 +198,7 @@ template #endif #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/numeric b/libcxx/include/numeric index 057faf508e6b..ba030aadbfef 100644 --- a/libcxx/include/numeric +++ b/libcxx/include/numeric @@ -163,7 +163,7 @@ template #include <__numeric/transform_inclusive_scan.h> #include <__numeric/transform_reduce.h> -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/optional b/libcxx/include/optional index 865a71781708..d75b1fefde77 100644 --- a/libcxx/include/optional +++ b/libcxx/include/optional @@ -177,9 +177,12 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 +# include // IGNORE-CYCLE due to +#endif + +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include -# include # include # include # include diff --git a/libcxx/include/ostream b/libcxx/include/ostream index 59f7de673df6..216e58317db4 100644 --- a/libcxx/include/ostream +++ b/libcxx/include/ostream @@ -171,7 +171,7 @@ basic_ostream& operator<<(basic_ostream&, cons #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/random b/libcxx/include/random index 41ee4d85fda3..1193d0d1d4a3 100644 --- a/libcxx/include/random +++ b/libcxx/include/random @@ -1718,7 +1718,7 @@ class piecewise_linear_distribution #include <__random/weibull_distribution.h> #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/regex b/libcxx/include/regex index 8361b41321e6..38998924c6b2 100644 --- a/libcxx/include/regex +++ b/libcxx/include/regex @@ -778,7 +778,7 @@ typedef regex_token_iterator wsregex_token_iterator; #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/set b/libcxx/include/set index da62f6f5ca5b..f97ae2ab099e 100644 --- a/libcxx/include/set +++ b/libcxx/include/set @@ -485,7 +485,7 @@ erase_if(multiset& c, Predicate pred); // C++20 #include <__utility/forward.h> #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/span b/libcxx/include/span index 0f4e0c501c74..190c441fabc7 100644 --- a/libcxx/include/span +++ b/libcxx/include/span @@ -148,7 +148,7 @@ template #include // for remove_cv, etc #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/stack b/libcxx/include/stack index 86435c4559de..a4a76e5178b4 100644 --- a/libcxx/include/stack +++ b/libcxx/include/stack @@ -107,7 +107,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/string b/libcxx/include/string index 2180f86f0e0b..1ee0cdc51d5f 100644 --- a/libcxx/include/string +++ b/libcxx/include/string @@ -569,7 +569,7 @@ basic_string operator "" s( const char32_t *str, size_t len ); # include #endif -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/string_view b/libcxx/include/string_view index d0c70a20fb38..a964f13ab8d0 100644 --- a/libcxx/include/string_view +++ b/libcxx/include/string_view @@ -224,7 +224,7 @@ namespace std { #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/thread b/libcxx/include/thread index 8b8699271eee..85a845c2b223 100644 --- a/libcxx/include/thread +++ b/libcxx/include/thread @@ -99,8 +99,11 @@ void sleep_for(const chrono::duration& rel_time); #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES -# include +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 17 +# include // IGNORE-CYCLE due to +#endif + +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/tuple b/libcxx/include/tuple index 2c729455cac2..01c59b3b3ea3 100644 --- a/libcxx/include/tuple +++ b/libcxx/include/tuple @@ -220,7 +220,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/typeindex b/libcxx/include/typeindex index 6b2a78ec8cb1..d1b750d334b3 100644 --- a/libcxx/include/typeindex +++ b/libcxx/include/typeindex @@ -51,7 +51,7 @@ struct hash #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/unordered_map b/libcxx/include/unordered_map index ebe218076d8b..07312453ccbb 100644 --- a/libcxx/include/unordered_map +++ b/libcxx/include/unordered_map @@ -531,7 +531,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/include/unordered_set b/libcxx/include/unordered_set index c3a3bc8107f4..e29488525301 100644 --- a/libcxx/include/unordered_set +++ b/libcxx/include/unordered_set @@ -474,7 +474,7 @@ template #include <__utility/forward.h> #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/utility b/libcxx/include/utility index 7a1a45e334a3..9462b833b07c 100644 --- a/libcxx/include/utility +++ b/libcxx/include/utility @@ -243,7 +243,7 @@ template #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include #endif diff --git a/libcxx/include/valarray b/libcxx/include/valarray index 6f8a3b84197b..b47807cc69dd 100644 --- a/libcxx/include/valarray +++ b/libcxx/include/valarray @@ -360,7 +360,7 @@ template unspecified2 end(const valarray& v); #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/variant b/libcxx/include/variant index e6988f3c1710..7f8bb4170e39 100644 --- a/libcxx/include/variant +++ b/libcxx/include/variant @@ -228,7 +228,7 @@ namespace std { #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include #endif diff --git a/libcxx/include/vector b/libcxx/include/vector index 87eb56c8ae9f..0786a516b3b8 100644 --- a/libcxx/include/vector +++ b/libcxx/include/vector @@ -307,7 +307,7 @@ erase_if(vector& c, Predicate pred); // C++20 #include #include -#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES +#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 # include # include # include diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.algorithm b/libcxx/test/libcxx/transitive_includes/cxx20/expected.algorithm index 944a3eeea2d6..f8ccff41c2bb 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.algorithm +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.algorithm @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.any b/libcxx/test/libcxx/transitive_includes/cxx20/expected.any index 86009188e53e..54d38834515b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.any +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.any @@ -1,6 +1,5 @@ any atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.array b/libcxx/test/libcxx/transitive_includes/cxx20/expected.array index 7145642a8f46..ce0091420b9b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.array +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.array @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.atomic b/libcxx/test/libcxx/transitive_includes/cxx20/expected.atomic index 3e9917b3da1a..a211832b18bb 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.atomic +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.atomic @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.barrier b/libcxx/test/libcxx/transitive_includes/cxx20/expected.barrier index c2865c8d3ef0..883919aa7d76 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.barrier +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.barrier @@ -1,6 +1,5 @@ atomic barrier -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.bitset b/libcxx/test/libcxx/transitive_includes/cxx20/expected.bitset index 3cf3e8dbdfc7..a85bd53914e7 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.bitset +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.bitset @@ -4,7 +4,6 @@ atomic bit bitset cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ccomplex b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ccomplex index 98bf9a8010e4..498d5a1ff079 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ccomplex +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ccomplex @@ -6,7 +6,6 @@ bitset ccomplex cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.codecvt b/libcxx/test/libcxx/transitive_includes/cxx20/expected.codecvt index 0931ca137c0b..5c7efd549f69 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.codecvt +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.codecvt @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath codecvt diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.complex b/libcxx/test/libcxx/transitive_includes/cxx20/expected.complex index 64161c1d331f..7b2a43f3ec9f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.complex +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.complex @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.condition_variable b/libcxx/test/libcxx/transitive_includes/cxx20/expected.condition_variable index 968007a37cef..c3a60ae3ae54 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.condition_variable +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.condition_variable @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ctgmath b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ctgmath index 7467a5ab5952..727591312a69 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ctgmath +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ctgmath @@ -6,7 +6,6 @@ bitset ccomplex cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.deque b/libcxx/test/libcxx/transitive_includes/cxx20/expected.deque index c26bdc7479b6..e3144557aa46 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.deque +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.deque @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_algorithm b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_algorithm index 8a5cd7de65d8..dfebf4878e7b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_algorithm +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_algorithm @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_coroutine b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_coroutine index 682f0fa0e7a8..b7344ece8f95 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_coroutine +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_coroutine @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_deque b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_deque index bd86d1588beb..961599b9bc6c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_deque +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_deque @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_forward_list b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_forward_list index c43fab08b41f..fe3c906fa480 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_forward_list +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_forward_list @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_functional b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_functional index 87cee2d28882..689ccf1c6a27 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_functional +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_functional @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_list b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_list index ac800654f532..5adfb13181ec 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_list +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_list @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_map b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_map index d132098b01a1..880a23b98e42 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_map +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_map @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_memory_resource b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_memory_resource index 94d9abd26b6c..b5ff253cbacf 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_memory_resource +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_memory_resource @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_regex b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_regex index 8a49aac962c2..f91eef1d7a56 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_regex +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_regex @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_set b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_set index f1d2953360dc..5558bc67e5d0 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_set +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_set @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_simd b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_simd index f06f6e9cea01..74f77f65c724 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_simd +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_simd @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_string b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_string index 367a9ed7da4b..bb7e551ff70b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_string +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_string @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_map b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_map index 16753ae30a7b..3614946ae032 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_map +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_map @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_set b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_set index 1aafa61386b7..0a77898c1e0b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_set +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_unordered_set @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_vector b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_vector index 1c569628be18..ffd37e1ee674 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_vector +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.experimental_vector @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_map b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_map index 459536294e0c..e199190cbfb0 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_map +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_map @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_set b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_set index 160335aab367..2a3d11e6ff40 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_set +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ext_hash_set @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.filesystem b/libcxx/test/libcxx/transitive_includes/cxx20/expected.filesystem index 22e80bc11192..02157ec5aa54 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.filesystem +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.filesystem @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.format b/libcxx/test/libcxx/transitive_includes/cxx20/expected.format index 08d46d27a9c0..595b589ef93f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.format +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.format @@ -5,7 +5,6 @@ bit cctype cerrno charconv -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.forward_list b/libcxx/test/libcxx/transitive_includes/cxx20/expected.forward_list index 33afc74bd420..dde7fba4779c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.forward_list +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.forward_list @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.fstream b/libcxx/test/libcxx/transitive_includes/cxx20/expected.fstream index 7a892e11bfe6..7b14b7cf4e9a 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.fstream +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.fstream @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.functional b/libcxx/test/libcxx/transitive_includes/cxx20/expected.functional index 7625982373f8..243ba6b8ea53 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.functional +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.functional @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.future b/libcxx/test/libcxx/transitive_includes/cxx20/expected.future index 92bd4e044ecc..148b1eabe0d8 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.future +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.future @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.iomanip b/libcxx/test/libcxx/transitive_includes/cxx20/expected.iomanip index 39829086f4cb..fd992145bd1f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.iomanip +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.iomanip @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ios b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ios index 6e7e5b268976..b2eec45518af 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ios +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ios @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.iostream b/libcxx/test/libcxx/transitive_includes/cxx20/expected.iostream index 580aeaf86734..c743a03d7f7b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.iostream +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.iostream @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.istream b/libcxx/test/libcxx/transitive_includes/cxx20/expected.istream index fd0c4b4ca736..cd2a2f405afb 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.istream +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.istream @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.latch b/libcxx/test/libcxx/transitive_includes/cxx20/expected.latch index a7a6bbc912ce..ad8a92a30950 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.latch +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.latch @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.list b/libcxx/test/libcxx/transitive_includes/cxx20/expected.list index b596079c340b..e13c604d6a1c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.list +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.list @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.locale b/libcxx/test/libcxx/transitive_includes/cxx20/expected.locale index 29719367689e..456f5a21cd67 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.locale +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.locale @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.map b/libcxx/test/libcxx/transitive_includes/cxx20/expected.map index c871579ea35e..bc84d668429c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.map +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.map @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.memory b/libcxx/test/libcxx/transitive_includes/cxx20/expected.memory index f36910fde696..db28f1f58dd4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.memory +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.memory @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.mutex b/libcxx/test/libcxx/transitive_includes/cxx20/expected.mutex index 4d101cb290c1..dcaffb654be3 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.mutex +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.mutex @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.numeric b/libcxx/test/libcxx/transitive_includes/cxx20/expected.numeric index 558b32457eb4..2597d54ce83f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.numeric +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.numeric @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.optional b/libcxx/test/libcxx/transitive_includes/cxx20/expected.optional index 993ce23d8009..6b236d30066e 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.optional +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.optional @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ostream b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ostream index 762d13c26ac3..c5cea41f9f06 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ostream +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ostream @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.queue b/libcxx/test/libcxx/transitive_includes/cxx20/expected.queue index 5861852fc532..a9915f611df6 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.queue +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.queue @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.random b/libcxx/test/libcxx/transitive_includes/cxx20/expected.random index 96a956ad800a..f61748b1a301 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.random +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.random @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ranges b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ranges index 3dbb13bb9680..228747c4026b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.ranges +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.ranges @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.regex b/libcxx/test/libcxx/transitive_includes/cxx20/expected.regex index 76df20736662..7dfb8e668461 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.regex +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.regex @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.scoped_allocator b/libcxx/test/libcxx/transitive_includes/cxx20/expected.scoped_allocator index 22dcb319a5e6..22b72aa76685 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.scoped_allocator +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.scoped_allocator @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.semaphore b/libcxx/test/libcxx/transitive_includes/cxx20/expected.semaphore index d6802e25aa70..5d6f0da391d0 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.semaphore +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.semaphore @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.set b/libcxx/test/libcxx/transitive_includes/cxx20/expected.set index 849e87331b72..f41727fc4a56 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.set +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.set @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.shared_mutex b/libcxx/test/libcxx/transitive_includes/cxx20/expected.shared_mutex index fdea61e19bba..1372d40d2470 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.shared_mutex +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.shared_mutex @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.span b/libcxx/test/libcxx/transitive_includes/cxx20/expected.span index a46c30df8851..96d634628cbf 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.span +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.span @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.sstream b/libcxx/test/libcxx/transitive_includes/cxx20/expected.sstream index 1724fbdde39e..00e0758f4cce 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.sstream +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.sstream @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.stack b/libcxx/test/libcxx/transitive_includes/cxx20/expected.stack index 1a7d18cb85f2..21de647a7b6d 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.stack +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.stack @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.streambuf b/libcxx/test/libcxx/transitive_includes/cxx20/expected.streambuf index a3001ce44a1b..fa7e9ba84a37 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.streambuf +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.streambuf @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.string b/libcxx/test/libcxx/transitive_includes/cxx20/expected.string index 0dacf739a785..b90a8c85d103 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.string +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.string @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.string_view b/libcxx/test/libcxx/transitive_includes/cxx20/expected.string_view index e814351725ef..8b80b5bc5be5 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.string_view +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.string_view @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.strstream b/libcxx/test/libcxx/transitive_includes/cxx20/expected.strstream index 782153b595b6..9ebf526c6ae5 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.strstream +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.strstream @@ -5,7 +5,6 @@ bit bitset cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.system_error b/libcxx/test/libcxx/transitive_includes/cxx20/expected.system_error index 4101ee5209a3..1afa1e305c66 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.system_error +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.system_error @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.thread b/libcxx/test/libcxx/transitive_includes/cxx20/expected.thread index ab8c3c7c85ba..e314e5594537 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.thread +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.thread @@ -4,7 +4,6 @@ atomic bit cctype cerrno -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_map b/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_map index 2250cf96690a..0d226147d515 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_map +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_map @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_set b/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_set index 9352f0b05b72..44f4fd584005 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_set +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.unordered_set @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.valarray b/libcxx/test/libcxx/transitive_includes/cxx20/expected.valarray index a069f37119fa..445b715ab6e9 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.valarray +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.valarray @@ -2,7 +2,6 @@ algorithm array atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx20/expected.vector b/libcxx/test/libcxx/transitive_includes/cxx20/expected.vector index 5fb9d7d19cc1..9fbca5e0516d 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx20/expected.vector +++ b/libcxx/test/libcxx/transitive_includes/cxx20/expected.vector @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.algorithm b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.algorithm index 944a3eeea2d6..8e539be98cbc 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.algorithm +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.algorithm @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare @@ -14,7 +13,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -23,6 +21,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.any b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.any index 86009188e53e..4f3cff5c0634 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.any +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.any @@ -1,6 +1,5 @@ any atomic -chrono climits cmath compare @@ -13,7 +12,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -22,6 +20,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.array b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.array index 7145642a8f46..0fb1b67d13d0 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.array +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.array @@ -1,29 +1,14 @@ -algorithm array -atomic -bit -chrono -climits cmath compare concepts cstddef cstdint cstdlib -cstring -ctime exception initializer_list iosfwd -iterator limits -memory -new -ratio stdexcept -tuple type_traits -typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.atomic b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.atomic index 3e9917b3da1a..42e3c191ac89 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.atomic +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.atomic @@ -1,8 +1,5 @@ atomic -chrono climits -cmath -compare cstddef cstdint cstring diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.barrier b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.barrier index c2865c8d3ef0..cb7845f45e0c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.barrier +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.barrier @@ -1,6 +1,5 @@ atomic barrier -chrono climits cmath compare @@ -13,7 +12,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -22,6 +20,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bit b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bit index 4fb5285f8142..3f58643d6062 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bit +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bit @@ -2,7 +2,6 @@ bit cstddef cstdint cstdlib -iosfwd limits type_traits version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bitset b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bitset index 3cf3e8dbdfc7..d3ee4af66e1b 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bitset +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.bitset @@ -1,10 +1,6 @@ -algorithm -array atomic -bit bitset cctype -chrono climits cmath compare @@ -18,14 +14,11 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept string @@ -33,8 +26,4 @@ string_view tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ccomplex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ccomplex index 98bf9a8010e4..cfc2d04436fe 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ccomplex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ccomplex @@ -1,12 +1,8 @@ -algorithm -array atomic -bit bitset ccomplex cctype cerrno -chrono climits cmath compare @@ -22,18 +18,15 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio sstream @@ -45,8 +38,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.charconv b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.charconv index 1ab0e5d37a40..448fc06daf92 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.charconv +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.charconv @@ -7,7 +7,6 @@ cstdint cstdlib cstring initializer_list -iosfwd limits type_traits version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.codecvt b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.codecvt index 0931ca137c0b..f846715edf80 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.codecvt +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.codecvt @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath codecvt @@ -19,15 +15,12 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory mutex new -optional ratio stdexcept string @@ -36,8 +29,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.complex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.complex index 64161c1d331f..eb5fe7c87bf7 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.complex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.complex @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -21,18 +17,15 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio sstream @@ -44,8 +37,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.condition_variable b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.condition_variable index 968007a37cef..081849db56d2 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.condition_variable +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.condition_variable @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -19,14 +15,11 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept string @@ -35,8 +28,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.coroutine b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.coroutine index 8dd332d47254..1f31012bf5be 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.coroutine +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.coroutine @@ -4,7 +4,6 @@ coroutine cstddef cstdint cstring -iosfwd limits type_traits version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ctgmath b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ctgmath index 7467a5ab5952..ac37b74ac56e 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ctgmath +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ctgmath @@ -1,12 +1,8 @@ -algorithm -array atomic -bit bitset ccomplex cctype cerrno -chrono climits cmath compare @@ -23,18 +19,15 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio sstream @@ -46,8 +39,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.deque b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.deque index c26bdc7479b6..aa51131432ea 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.deque +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.deque @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -14,21 +10,14 @@ cstring ctime deque exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_algorithm b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_algorithm index 8a5cd7de65d8..7e307913a9fe 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_algorithm +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_algorithm @@ -1,7 +1,6 @@ algorithm atomic bit -chrono climits cmath compare @@ -15,7 +14,6 @@ exception experimental/algorithm initializer_list iosfwd -iterator limits memory new @@ -24,6 +22,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_coroutine b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_coroutine index 682f0fa0e7a8..89fc3edcec46 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_coroutine +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_coroutine @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare @@ -13,7 +12,6 @@ exception experimental/coroutine initializer_list iosfwd -iterator limits memory new @@ -22,6 +20,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_deque b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_deque index bd86d1588beb..e1677c7dd843 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_deque +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_deque @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -17,21 +13,15 @@ exception experimental/deque experimental/memory_resource experimental/utility -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept tuple type_traits typeinfo -unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_forward_list b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_forward_list index c43fab08b41f..af433ce90949 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_forward_list +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_forward_list @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -17,21 +13,15 @@ experimental/forward_list experimental/memory_resource experimental/utility forward_list -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept tuple type_traits typeinfo -unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_functional b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_functional index 87cee2d28882..ce502b5e9803 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_functional +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_functional @@ -1,8 +1,5 @@ -algorithm array atomic -bit -chrono climits cmath compare @@ -17,7 +14,6 @@ experimental/functional functional initializer_list iosfwd -iterator limits memory new @@ -28,7 +24,5 @@ tuple type_traits typeinfo unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_iterator b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_iterator index 14d31c215ffb..83a9b8d93c65 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_iterator +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_iterator @@ -14,7 +14,5 @@ limits new tuple type_traits -typeinfo -utility variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_list b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_list index ac800654f532..aae9f23d08e9 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_list +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_list @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -16,22 +12,16 @@ exception experimental/list experimental/memory_resource experimental/utility -functional initializer_list iosfwd -iterator limits list memory new -optional ratio stdexcept tuple type_traits typeinfo -unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_map b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_map index d132098b01a1..cb76c7642ec9 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_map +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_map @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -16,10 +12,8 @@ exception experimental/map experimental/memory_resource experimental/utility -functional initializer_list iosfwd -iterator limits map memory @@ -30,8 +24,5 @@ stdexcept tuple type_traits typeinfo -unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_memory_resource b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_memory_resource index 94d9abd26b6c..67d2441ae369 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_memory_resource +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_memory_resource @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare @@ -14,7 +13,6 @@ experimental/memory_resource experimental/utility initializer_list iosfwd -iterator limits memory new @@ -24,5 +22,4 @@ tuple type_traits typeinfo utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_regex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_regex index 8a49aac962c2..6490adb5a1b4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_regex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_regex @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -23,15 +19,12 @@ experimental/memory_resource experimental/regex experimental/string experimental/utility -functional initializer_list iosfwd -iterator limits memory mutex new -optional ratio regex stdexcept @@ -41,8 +34,6 @@ system_error tuple type_traits typeinfo -unordered_map utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_set b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_set index f1d2953360dc..03a09aff0574 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_set +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_set @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -16,10 +12,8 @@ exception experimental/memory_resource experimental/set experimental/utility -functional initializer_list iosfwd -iterator limits memory new @@ -30,8 +24,5 @@ stdexcept tuple type_traits typeinfo -unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_simd b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_simd index f06f6e9cea01..999b0aafb666 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_simd +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_simd @@ -1,34 +1,16 @@ -algorithm array -atomic -bit -chrono -climits cmath compare concepts cstddef cstdint cstdlib -cstring -ctime exception experimental/simd -functional initializer_list iosfwd -iterator limits -memory -new -optional -ratio stdexcept tuple type_traits -typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_string b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_string index 367a9ed7da4b..4fb05391c7b4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_string +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_string @@ -1,9 +1,5 @@ -algorithm -array atomic -bit cctype -chrono climits cmath compare @@ -20,14 +16,11 @@ exception experimental/memory_resource experimental/string experimental/utility -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept string @@ -35,8 +28,5 @@ string_view tuple type_traits typeinfo -unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_map b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_map index 16753ae30a7b..04efa3377d81 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_map +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_map @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -16,10 +12,8 @@ exception experimental/memory_resource experimental/unordered_map experimental/utility -functional initializer_list iosfwd -iterator limits memory new @@ -31,6 +25,4 @@ type_traits typeinfo unordered_map utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_set b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_set index 1aafa61386b7..798b920506cf 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_set +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_unordered_set @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -16,10 +12,8 @@ exception experimental/memory_resource experimental/unordered_set experimental/utility -functional initializer_list iosfwd -iterator limits memory new @@ -29,9 +23,6 @@ stdexcept tuple type_traits typeinfo -unordered_map unordered_set utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_utility b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_utility index a399b3ebb27c..788283fb30b9 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_utility +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_utility @@ -5,7 +5,6 @@ cstdint cstdlib experimental/utility initializer_list -iosfwd limits type_traits utility diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_vector b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_vector index 1c569628be18..35355e4d3547 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_vector +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.experimental_vector @@ -1,7 +1,4 @@ -algorithm atomic -bit -chrono climits cmath compare @@ -17,7 +14,6 @@ experimental/utility experimental/vector initializer_list iosfwd -iterator limits memory new @@ -27,6 +23,5 @@ tuple type_traits typeinfo utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_map b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_map index 459536294e0c..238ba8fade71 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_map +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_map @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare @@ -21,7 +20,6 @@ ext/hash_map functional initializer_list iosfwd -iterator limits memory new @@ -34,7 +32,5 @@ tuple type_traits typeinfo unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_set b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_set index 160335aab367..5e58c46663a5 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_set +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ext_hash_set @@ -3,7 +3,6 @@ array atomic bit cctype -chrono climits cmath compare @@ -21,7 +20,6 @@ ext/hash_set functional initializer_list iosfwd -iterator limits memory new @@ -34,7 +32,5 @@ tuple type_traits typeinfo unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.filesystem b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.filesystem index 22e80bc11192..adc5812121df 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.filesystem +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.filesystem @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -21,19 +17,16 @@ cwchar cwctype exception filesystem -functional initializer_list iomanip ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -44,8 +37,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.format b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.format index 08d46d27a9c0..d88f3f66919f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.format +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.format @@ -1,11 +1,9 @@ -algorithm array atomic bit cctype cerrno charconv -chrono climits cmath compare @@ -21,11 +19,9 @@ cwchar cwctype exception format -functional initializer_list ios iosfwd -iterator limits locale memory @@ -41,8 +37,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.forward_list b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.forward_list index 33afc74bd420..de184d39a0da 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.forward_list +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.forward_list @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -14,21 +10,14 @@ cstring ctime exception forward_list -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.fstream b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.fstream index 7a892e11bfe6..31ef4da04630 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.fstream +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.fstream @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -22,19 +18,16 @@ cwctype exception filesystem fstream -functional initializer_list iomanip ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -45,8 +38,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.functional b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.functional index 7625982373f8..944f5a2cedd7 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.functional +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.functional @@ -1,8 +1,5 @@ -algorithm array atomic -bit -chrono climits cmath compare @@ -16,7 +13,6 @@ exception functional initializer_list iosfwd -iterator limits memory new @@ -27,7 +23,5 @@ tuple type_traits typeinfo unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.future b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.future index 92bd4e044ecc..978baba9b8ec 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.future +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.future @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,16 +14,13 @@ ctime cwchar cwctype exception -functional future initializer_list iosfwd -iterator limits memory mutex new -optional ratio stdexcept string @@ -37,8 +30,4 @@ thread tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iomanip b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iomanip index 39829086f4cb..86446ab031fb 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iomanip +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iomanip @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -20,19 +16,16 @@ ctime cwchar cwctype exception -functional initializer_list iomanip ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -43,8 +36,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ios b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ios index 6e7e5b268976..3ecae9323ab4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ios +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ios @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,16 +14,13 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd -iterator limits memory mutex new -optional ratio stdexcept string @@ -36,8 +29,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iostream b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iostream index 580aeaf86734..2e4e74cc18b4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iostream +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iostream @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -20,19 +16,16 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd iostream istream -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -43,8 +36,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.istream b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.istream index fd0c4b4ca736..cbd4a87c1613 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.istream +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.istream @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -20,18 +16,15 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -42,8 +35,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iterator b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iterator index 447087a3f6f9..698f6cf9de2f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iterator +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.iterator @@ -13,7 +13,5 @@ limits new tuple type_traits -typeinfo -utility variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.latch b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.latch index a7a6bbc912ce..3d00941b9231 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.latch +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.latch @@ -1,8 +1,5 @@ atomic -chrono climits -cmath -compare cstddef cstdint cstring diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.list b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.list index b596079c340b..96d4f33db7d4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.list +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.list @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -13,22 +9,15 @@ cstdlib cstring ctime exception -functional initializer_list iosfwd -iterator limits list memory new -optional ratio stdexcept tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.locale b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.locale index 29719367689e..cdd6609f8440 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.locale +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.locale @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -19,17 +15,14 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd -iterator limits locale memory mutex new -optional ratio stdexcept streambuf @@ -39,8 +32,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.map b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.map index c871579ea35e..a6896289ab3f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.map +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.map @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -13,10 +9,8 @@ cstdlib cstring ctime exception -functional initializer_list iosfwd -iterator limits map memory @@ -27,8 +21,4 @@ stdexcept tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.memory b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.memory index f36910fde696..3b7a13de63fe 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.memory +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.memory @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare @@ -12,7 +11,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -21,6 +19,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.mutex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.mutex index 4d101cb290c1..1aa71f549fd4 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.mutex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.mutex @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,15 +14,12 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory mutex new -optional ratio stdexcept string @@ -35,8 +28,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.numeric b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.numeric index 558b32457eb4..843582958e10 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.numeric +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.numeric @@ -1,34 +1,8 @@ -algorithm -array -atomic -bit -chrono -climits cmath -compare concepts cstddef cstdint -cstdlib -cstring -ctime -exception -functional -initializer_list -iosfwd -iterator limits -memory -new numeric -optional -ratio -stdexcept -tuple type_traits -typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.optional b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.optional index 993ce23d8009..e888c8f4e0bd 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.optional +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.optional @@ -1,27 +1,15 @@ -atomic -chrono -climits cmath compare -concepts cstddef cstdint cstdlib cstring -ctime exception initializer_list iosfwd -iterator limits -memory new optional -ratio stdexcept -tuple type_traits -typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ostream b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ostream index 762d13c26ac3..1d7da3e2f96d 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ostream +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ostream @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -20,17 +16,14 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -41,8 +34,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.queue b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.queue index 5861852fc532..85fd646e834c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.queue +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.queue @@ -1,8 +1,5 @@ -algorithm array atomic -bit -chrono climits cmath compare @@ -17,7 +14,6 @@ exception functional initializer_list iosfwd -iterator limits memory new @@ -29,7 +25,5 @@ tuple type_traits typeinfo unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.random b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.random index 96a956ad800a..c8060db2909a 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.random +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.random @@ -1,9 +1,6 @@ -algorithm -array atomic bit cctype -chrono climits cmath compare @@ -17,15 +14,12 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new numeric -optional random ratio stdexcept @@ -34,8 +28,5 @@ string_view tuple type_traits typeinfo -unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ranges b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ranges index 3dbb13bb9680..f16d5e5d5505 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ranges +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.ranges @@ -1,9 +1,4 @@ -algorithm array -atomic -bit -chrono -climits cmath compare concepts @@ -11,25 +6,17 @@ cstddef cstdint cstdlib cstring -ctime exception -functional initializer_list iosfwd iterator limits -memory new optional ranges -ratio span stdexcept tuple type_traits -typeinfo -unordered_map -utility variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.regex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.regex index 76df20736662..447e31831d8f 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.regex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.regex @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -19,15 +15,12 @@ cwchar cwctype deque exception -functional initializer_list iosfwd -iterator limits memory mutex new -optional ratio regex stdexcept @@ -37,8 +30,5 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.scoped_allocator b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.scoped_allocator index 22dcb319a5e6..f4345de47a6a 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.scoped_allocator +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.scoped_allocator @@ -1,5 +1,4 @@ atomic -chrono climits cmath compare @@ -12,7 +11,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -22,6 +20,4 @@ stdexcept tuple type_traits typeinfo -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.semaphore b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.semaphore index d6802e25aa70..6893d0995506 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.semaphore +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.semaphore @@ -1,8 +1,5 @@ atomic -chrono climits -cmath -compare cstddef cstdint cstring diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.set b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.set index 849e87331b72..9b0f3cb52c18 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.set +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.set @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -13,10 +9,8 @@ cstdlib cstring ctime exception -functional initializer_list iosfwd -iterator limits memory new @@ -27,8 +21,4 @@ stdexcept tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.shared_mutex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.shared_mutex index fdea61e19bba..2bd4140b3d11 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.shared_mutex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.shared_mutex @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,14 +14,11 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio shared_mutex stdexcept @@ -35,8 +28,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.span b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.span index a46c30df8851..4ec98478d7ab 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.span +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.span @@ -1,34 +1,15 @@ -algorithm array -atomic -bit -chrono -climits cmath compare concepts cstddef cstdint cstdlib -cstring -ctime exception -functional initializer_list iosfwd -iterator limits -memory -new -optional -ratio span stdexcept -tuple type_traits -typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.sstream b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.sstream index 1724fbdde39e..1acc28a14008 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.sstream +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.sstream @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -20,18 +16,15 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio sstream @@ -43,8 +36,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.stack b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.stack index 1a7d18cb85f2..17c8d991260c 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.stack +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.stack @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -14,22 +10,15 @@ cstring ctime deque exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stack stdexcept tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.streambuf b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.streambuf index a3001ce44a1b..5e8e278a70ff 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.streambuf +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.streambuf @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,16 +14,13 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd -iterator limits memory mutex new -optional ratio stdexcept streambuf @@ -37,8 +30,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string index 0dacf739a785..960707082bab 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string @@ -1,9 +1,5 @@ -algorithm -array atomic -bit cctype -chrono climits cmath compare @@ -17,14 +13,11 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept string @@ -32,8 +25,4 @@ string_view tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string_view b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string_view index e814351725ef..6bb7edfd0bf0 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string_view +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.string_view @@ -1,10 +1,4 @@ -algorithm -array -atomic -bit cctype -chrono -climits cmath compare concepts @@ -13,26 +7,13 @@ cstdint cstdio cstdlib cstring -ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits -memory -new -optional -ratio stdexcept string_view -tuple type_traits -typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.strstream b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.strstream index 782153b595b6..ed208f4d5eb3 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.strstream +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.strstream @@ -1,11 +1,7 @@ -algorithm -array atomic -bit bitset cctype cerrno -chrono climits cmath compare @@ -20,18 +16,15 @@ ctime cwchar cwctype exception -functional initializer_list ios iosfwd istream -iterator limits locale memory mutex new -optional ostream ratio stdexcept @@ -43,8 +36,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.system_error b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.system_error index 4101ee5209a3..30ca93cf23bd 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.system_error +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.system_error @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,14 +14,11 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept string @@ -34,8 +27,4 @@ system_error tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.thread b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.thread index ab8c3c7c85ba..102ca5891713 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.thread +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.thread @@ -1,10 +1,6 @@ -algorithm -array atomic -bit cctype cerrno -chrono climits cmath compare @@ -18,14 +14,11 @@ ctime cwchar cwctype exception -functional initializer_list iosfwd -iterator limits memory new -optional ratio stdexcept string @@ -35,8 +28,4 @@ thread tuple type_traits typeinfo -unordered_map -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.tuple b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.tuple index 69858dc888c3..2a4e44c6f4e9 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.tuple +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.tuple @@ -2,14 +2,7 @@ cmath compare cstddef cstdint -cstdlib -exception -initializer_list -iosfwd limits -new tuple type_traits -typeinfo -utility version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.typeindex b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.typeindex index 8f1c65253537..8ed579013db7 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.typeindex +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.typeindex @@ -4,12 +4,8 @@ cstddef cstdint cstdlib exception -initializer_list -iosfwd limits -new type_traits typeindex typeinfo -utility version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_map b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_map index 2250cf96690a..4f2f2ff02388 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_map +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_map @@ -1,7 +1,4 @@ -algorithm atomic -bit -chrono climits cmath compare @@ -14,7 +11,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -25,6 +21,4 @@ tuple type_traits typeinfo unordered_map -utility -variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_set b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_set index 9352f0b05b72..2c825fb58ac9 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_set +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.unordered_set @@ -1,8 +1,4 @@ -algorithm -array atomic -bit -chrono climits cmath compare @@ -13,10 +9,8 @@ cstdlib cstring ctime exception -functional initializer_list iosfwd -iterator limits memory new @@ -26,9 +20,5 @@ stdexcept tuple type_traits typeinfo -unordered_map unordered_set -utility -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.utility b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.utility index 799a14724cf4..30781fff9336 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.utility +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.utility @@ -4,7 +4,6 @@ cstddef cstdint cstdlib initializer_list -iosfwd limits type_traits utility diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.valarray b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.valarray index a069f37119fa..b5543ea5c701 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.valarray +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.valarray @@ -1,34 +1,15 @@ -algorithm -array -atomic -bit -chrono -climits cmath -compare concepts cstddef cstdint cstdlib cstring -ctime exception -functional initializer_list iosfwd -iterator limits -memory new -optional -ratio stdexcept -tuple type_traits -typeinfo -unordered_map -utility valarray -variant -vector version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.variant b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.variant index d94d72974cb8..44553c77ce56 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.variant +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.variant @@ -6,12 +6,9 @@ cstdlib cstring exception initializer_list -iosfwd limits new tuple type_traits -typeinfo -utility variant version diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.vector b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.vector index 5fb9d7d19cc1..9553eb0c04d7 100644 --- a/libcxx/test/libcxx/transitive_includes/cxx2b/expected.vector +++ b/libcxx/test/libcxx/transitive_includes/cxx2b/expected.vector @@ -1,7 +1,4 @@ -algorithm atomic -bit -chrono climits cmath compare @@ -14,7 +11,6 @@ ctime exception initializer_list iosfwd -iterator limits memory new @@ -23,7 +19,5 @@ stdexcept tuple type_traits typeinfo -utility -variant vector version diff --git a/libcxx/utils/graph_header_deps.py b/libcxx/utils/graph_header_deps.py index 1fe0fcc6d19d..871a9d6ca55e 100755 --- a/libcxx/utils/graph_header_deps.py +++ b/libcxx/utils/graph_header_deps.py @@ -69,7 +69,15 @@ def build_file_entry(fname, options): local_includes.append(m.group(1)) m = re.match(r'\s*#\s*include\s+<([^>]*)>', line) if m is not None: - system_includes.append(m.group(1)) + # Since libc++ keeps transitive includes guarded by the + # language version some cycles can be ignored. For example + # before C++20 several headers included without using + # it. In C++20 conditionally includes in + # C++20. This causes multiple cycles in this script that can't + # happen in practice. Since the script uses a regex instead of + # a parser use a magic word. + if re.search(r'IGNORE-CYCLE', line) is None: + system_includes.append(m.group(1)) fully_qualified_includes = [ locate_header_file(h, options.search_dirs)