[libcxx-commits] [libcxx] b9a2658 - [libc++][C++03] Use `__cxx03/` headers in C++03 mode (#109002)

via libcxx-commits libcxx-commits at lists.llvm.org
Sat Dec 21 04:01:54 PST 2024


Author: Nikolas Klauser
Date: 2024-12-21T13:01:48+01:00
New Revision: b9a2658a3e8bd13b0f9e7a8a440832a95b377216

URL: https://github.com/llvm/llvm-project/commit/b9a2658a3e8bd13b0f9e7a8a440832a95b377216
DIFF: https://github.com/llvm/llvm-project/commit/b9a2658a3e8bd13b0f9e7a8a440832a95b377216.diff

LOG: [libc++][C++03] Use `__cxx03/` headers in C++03 mode (#109002)

This patch implements the forwarding to frozen C++03 headers as
discussed in
https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc. In the
RFC, we initially proposed selecting the right headers from the Clang
driver, however consensus seemed to steer towards handling this in the
library itself. This patch implements that direction.

At a high level, the changes basically amount to making each public
header look like this:

```
// inside <vector>
#ifdef _LIBCPP_CXX03_LANG
#  include <__cxx03/vector>
#else
  // normal <vector> content
#endif
```

In most cases, public headers are simple umbrella headers so there isn't
much code in the #else branch. In other cases, the #else branch contains
the actual implementation of the header.

Added: 
    libcxx/cmake/caches/Generic-cxx03-frozen.cmake
    libcxx/include/__cxx03/__configuration/config_site_shim.h

Modified: 
    .github/workflows/libcxx-build-and-test.yaml
    libcxx/include/CMakeLists.txt
    libcxx/include/__cxx03/__config
    libcxx/include/__cxx03/__configuration/abi.h
    libcxx/include/__cxx03/__configuration/compiler.h
    libcxx/include/__cxx03/__configuration/language.h
    libcxx/include/__cxx03/__configuration/platform.h
    libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
    libcxx/include/__cxx03/__thread/support/pthread.h
    libcxx/include/__cxx03/climits
    libcxx/include/__cxx03/locale
    libcxx/include/__cxx03/module.modulemap
    libcxx/include/__cxx03/version
    libcxx/include/algorithm
    libcxx/include/any
    libcxx/include/array
    libcxx/include/atomic
    libcxx/include/barrier
    libcxx/include/bit
    libcxx/include/bitset
    libcxx/include/cassert
    libcxx/include/ccomplex
    libcxx/include/cctype
    libcxx/include/cerrno
    libcxx/include/cfenv
    libcxx/include/cfloat
    libcxx/include/charconv
    libcxx/include/chrono
    libcxx/include/cinttypes
    libcxx/include/ciso646
    libcxx/include/climits
    libcxx/include/clocale
    libcxx/include/cmath
    libcxx/include/codecvt
    libcxx/include/compare
    libcxx/include/complex
    libcxx/include/complex.h
    libcxx/include/concepts
    libcxx/include/condition_variable
    libcxx/include/coroutine
    libcxx/include/csetjmp
    libcxx/include/csignal
    libcxx/include/cstdalign
    libcxx/include/cstdarg
    libcxx/include/cstdbool
    libcxx/include/cstddef
    libcxx/include/cstdint
    libcxx/include/cstdio
    libcxx/include/cstdlib
    libcxx/include/cstring
    libcxx/include/ctgmath
    libcxx/include/ctime
    libcxx/include/ctype.h
    libcxx/include/cuchar
    libcxx/include/cwchar
    libcxx/include/cwctype
    libcxx/include/deque
    libcxx/include/errno.h
    libcxx/include/exception
    libcxx/include/execution
    libcxx/include/expected
    libcxx/include/experimental/iterator
    libcxx/include/experimental/memory
    libcxx/include/experimental/propagate_const
    libcxx/include/experimental/simd
    libcxx/include/experimental/type_traits
    libcxx/include/experimental/utility
    libcxx/include/ext/hash_map
    libcxx/include/ext/hash_set
    libcxx/include/fenv.h
    libcxx/include/filesystem
    libcxx/include/flat_map
    libcxx/include/float.h
    libcxx/include/format
    libcxx/include/forward_list
    libcxx/include/fstream
    libcxx/include/functional
    libcxx/include/future
    libcxx/include/initializer_list
    libcxx/include/inttypes.h
    libcxx/include/iomanip
    libcxx/include/ios
    libcxx/include/iosfwd
    libcxx/include/iostream
    libcxx/include/istream
    libcxx/include/iterator
    libcxx/include/latch
    libcxx/include/limits
    libcxx/include/list
    libcxx/include/locale
    libcxx/include/map
    libcxx/include/math.h
    libcxx/include/mdspan
    libcxx/include/memory
    libcxx/include/memory_resource
    libcxx/include/mutex
    libcxx/include/new
    libcxx/include/numbers
    libcxx/include/numeric
    libcxx/include/optional
    libcxx/include/ostream
    libcxx/include/print
    libcxx/include/queue
    libcxx/include/random
    libcxx/include/ranges
    libcxx/include/ratio
    libcxx/include/regex
    libcxx/include/scoped_allocator
    libcxx/include/semaphore
    libcxx/include/set
    libcxx/include/shared_mutex
    libcxx/include/source_location
    libcxx/include/span
    libcxx/include/sstream
    libcxx/include/stack
    libcxx/include/stdatomic.h
    libcxx/include/stdbool.h
    libcxx/include/stddef.h
    libcxx/include/stdexcept
    libcxx/include/stdio.h
    libcxx/include/stdlib.h
    libcxx/include/stop_token
    libcxx/include/streambuf
    libcxx/include/string
    libcxx/include/string.h
    libcxx/include/string_view
    libcxx/include/strstream
    libcxx/include/syncstream
    libcxx/include/system_error
    libcxx/include/tgmath.h
    libcxx/include/thread
    libcxx/include/tuple
    libcxx/include/type_traits
    libcxx/include/typeindex
    libcxx/include/typeinfo
    libcxx/include/uchar.h
    libcxx/include/unordered_map
    libcxx/include/unordered_set
    libcxx/include/utility
    libcxx/include/valarray
    libcxx/include/variant
    libcxx/include/vector
    libcxx/include/version
    libcxx/include/wchar.h
    libcxx/include/wctype.h
    libcxx/test/libcxx/algorithms/half_positive.pass.cpp
    libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
    libcxx/test/libcxx/assertions/default_verbose_abort.pass.cpp
    libcxx/test/libcxx/assertions/modes/none.pass.cpp
    libcxx/test/libcxx/assertions/single_expression.pass.cpp
    libcxx/test/libcxx/atomics/atomics.syn/compatible_with_stdatomic.compile.pass.cpp
    libcxx/test/libcxx/clang_modules_include.gen.py
    libcxx/test/libcxx/containers/associative/tree_balance_after_insert.pass.cpp
    libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp
    libcxx/test/libcxx/containers/associative/tree_left_rotate.pass.cpp
    libcxx/test/libcxx/containers/associative/tree_remove.pass.cpp
    libcxx/test/libcxx/containers/associative/tree_right_rotate.pass.cpp
    libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp
    libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp
    libcxx/test/libcxx/containers/container_traits.compile.pass.cpp
    libcxx/test/libcxx/containers/unord/key_value_traits.pass.cpp
    libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
    libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
    libcxx/test/libcxx/depr/depr.c.headers/extern_c.pass.cpp
    libcxx/test/libcxx/header_inclusions.gen.py
    libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
    libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
    libcxx/test/libcxx/input.output/iostream.format/input.streams/traits_mismatch.verify.cpp
    libcxx/test/libcxx/input.output/iostream.format/output.streams/traits_mismatch.verify.cpp
    libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
    libcxx/test/libcxx/input.output/string.streams/traits_mismatch.verify.cpp
    libcxx/test/libcxx/iterators/aliasing_iterator.pass.cpp
    libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
    libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
    libcxx/test/libcxx/iterators/bounded_iter/pointer_traits.pass.cpp
    libcxx/test/libcxx/iterators/bounded_iter/types.compile.pass.cpp
    libcxx/test/libcxx/iterators/contiguous_iterators.conv.compile.pass.cpp
    libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
    libcxx/test/libcxx/iterators/iterator.primitives/iterator.operations/prev.verify.cpp
    libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
    libcxx/test/libcxx/lint/lint_cmakelists.sh.py
    libcxx/test/libcxx/memory/allocation_guard.pass.cpp
    libcxx/test/libcxx/memory/swap_allocator.pass.cpp
    libcxx/test/libcxx/numerics/bit.ops.pass.cpp
    libcxx/test/libcxx/numerics/clamp_to_integral.pass.cpp
    libcxx/test/libcxx/numerics/complex.number/cmplx.over.pow.pass.cpp
    libcxx/test/libcxx/selftest/test_macros.pass.cpp
    libcxx/test/libcxx/strings/c.strings/constexpr_memmove.pass.cpp
    libcxx/test/libcxx/transitive_includes.gen.py
    libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp
    libcxx/test/libcxx/type_traits/is_constant_evaluated.pass.cpp
    libcxx/test/libcxx/type_traits/is_trivially_comparable.compile.pass.cpp
    libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
    libcxx/test/libcxx/utilities/exception_guard.odr.sh.cpp
    libcxx/test/libcxx/utilities/is_pointer_in_range.pass.cpp
    libcxx/test/libcxx/utilities/is_valid_range.pass.cpp
    libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp
    libcxx/test/libcxx/utilities/no_destroy.pass.cpp
    libcxx/test/libcxx/utilities/template.bitset/includes.pass.cpp
    libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp
    libcxx/test/std/containers/sequences/array/array.fill/fill.verify.cpp
    libcxx/test/std/containers/sequences/array/array.swap/swap.verify.cpp
    libcxx/test/std/containers/sequences/array/array.tuple/get.verify.cpp
    libcxx/test/std/containers/sequences/array/array.tuple/tuple_element.verify.cpp
    libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp
    libcxx/test/std/containers/sequences/forwardlist/types.pass.cpp
    libcxx/test/std/containers/sequences/list/types.pass.cpp
    libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
    libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
    libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
    libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
    libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
    libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
    libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
    libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
    libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
    libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
    libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
    libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
    libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
    libcxx/test/std/language.support/support.runtime/cstdalign.compile.pass.cpp
    libcxx/test/std/numerics/c.math/isnormal.pass.cpp
    libcxx/test/std/numerics/c.math/signbit.pass.cpp
    libcxx/test/std/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp
    libcxx/test/std/strings/basic.string/char.bad.verify.cpp
    libcxx/test/std/strings/string.view/char.bad.verify.cpp
    libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
    libcxx/test/support/test_macros.h
    libcxx/test/tools/clang_tidy_checks/proper_version_checks.cpp
    libcxx/utils/ci/run-buildbot
    libcxx/utils/generate_feature_test_macro_components.py
    libcxx/utils/libcxx/test/params.py
    libcxx/vendor/llvm/default_assertion_handler.in

Removed: 
    libcxx/include/__cxx03/CMakeLists.txt


################################################################################
diff  --git a/.github/workflows/libcxx-build-and-test.yaml b/.github/workflows/libcxx-build-and-test.yaml
index a061be3892523d..a28bf4d5daf6d5 100644
--- a/.github/workflows/libcxx-build-and-test.yaml
+++ b/.github/workflows/libcxx-build-and-test.yaml
@@ -43,6 +43,7 @@ jobs:
       fail-fast: false
       matrix:
         config: [
+          'frozen-cxx03-headers',
           'generic-cxx03',
           'generic-cxx26',
           'generic-modules'

diff  --git a/libcxx/cmake/caches/Generic-cxx03-frozen.cmake b/libcxx/cmake/caches/Generic-cxx03-frozen.cmake
new file mode 100644
index 00000000000000..dfd158bf6edbe5
--- /dev/null
+++ b/libcxx/cmake/caches/Generic-cxx03-frozen.cmake
@@ -0,0 +1,2 @@
+set(LIBCXX_TEST_PARAMS "std=c++03;test_frozen_cxx03_headers=True" CACHE STRING "")
+set(LIBCXXABI_TEST_PARAMS "${LIBCXX_TEST_PARAMS}" CACHE STRING "")

diff  --git a/libcxx/include/CMakeLists.txt b/libcxx/include/CMakeLists.txt
index b5bbfbe7d3a233..0b484ebe5e87c8 100644
--- a/libcxx/include/CMakeLists.txt
+++ b/libcxx/include/CMakeLists.txt
@@ -1054,6 +1054,1026 @@ set(files
   version
   wchar.h
   wctype.h
+
+# C++03 frozen headers
+  __cxx03/__algorithm/adjacent_find.h
+  __cxx03/__algorithm/all_of.h
+  __cxx03/__algorithm/any_of.h
+  __cxx03/__algorithm/binary_search.h
+  __cxx03/__algorithm/clamp.h
+  __cxx03/__algorithm/comp.h
+  __cxx03/__algorithm/comp_ref_type.h
+  __cxx03/__algorithm/copy.h
+  __cxx03/__algorithm/copy_backward.h
+  __cxx03/__algorithm/copy_if.h
+  __cxx03/__algorithm/copy_move_common.h
+  __cxx03/__algorithm/copy_n.h
+  __cxx03/__algorithm/count.h
+  __cxx03/__algorithm/count_if.h
+  __cxx03/__algorithm/equal.h
+  __cxx03/__algorithm/equal_range.h
+  __cxx03/__algorithm/fill.h
+  __cxx03/__algorithm/fill_n.h
+  __cxx03/__algorithm/find.h
+  __cxx03/__algorithm/find_end.h
+  __cxx03/__algorithm/find_first_of.h
+  __cxx03/__algorithm/find_if.h
+  __cxx03/__algorithm/find_if_not.h
+  __cxx03/__algorithm/find_segment_if.h
+  __cxx03/__algorithm/fold.h
+  __cxx03/__algorithm/for_each.h
+  __cxx03/__algorithm/for_each_n.h
+  __cxx03/__algorithm/for_each_segment.h
+  __cxx03/__algorithm/generate.h
+  __cxx03/__algorithm/generate_n.h
+  __cxx03/__algorithm/half_positive.h
+  __cxx03/__algorithm/in_found_result.h
+  __cxx03/__algorithm/in_fun_result.h
+  __cxx03/__algorithm/in_in_out_result.h
+  __cxx03/__algorithm/in_in_result.h
+  __cxx03/__algorithm/in_out_out_result.h
+  __cxx03/__algorithm/in_out_result.h
+  __cxx03/__algorithm/includes.h
+  __cxx03/__algorithm/inplace_merge.h
+  __cxx03/__algorithm/is_heap.h
+  __cxx03/__algorithm/is_heap_until.h
+  __cxx03/__algorithm/is_partitioned.h
+  __cxx03/__algorithm/is_permutation.h
+  __cxx03/__algorithm/is_sorted.h
+  __cxx03/__algorithm/is_sorted_until.h
+  __cxx03/__algorithm/iter_swap.h
+  __cxx03/__algorithm/iterator_operations.h
+  __cxx03/__algorithm/lexicographical_compare.h
+  __cxx03/__algorithm/lexicographical_compare_three_way.h
+  __cxx03/__algorithm/lower_bound.h
+  __cxx03/__algorithm/make_heap.h
+  __cxx03/__algorithm/make_projected.h
+  __cxx03/__algorithm/max.h
+  __cxx03/__algorithm/max_element.h
+  __cxx03/__algorithm/merge.h
+  __cxx03/__algorithm/min.h
+  __cxx03/__algorithm/min_element.h
+  __cxx03/__algorithm/min_max_result.h
+  __cxx03/__algorithm/minmax.h
+  __cxx03/__algorithm/minmax_element.h
+  __cxx03/__algorithm/mismatch.h
+  __cxx03/__algorithm/move.h
+  __cxx03/__algorithm/move_backward.h
+  __cxx03/__algorithm/next_permutation.h
+  __cxx03/__algorithm/none_of.h
+  __cxx03/__algorithm/nth_element.h
+  __cxx03/__algorithm/partial_sort.h
+  __cxx03/__algorithm/partial_sort_copy.h
+  __cxx03/__algorithm/partition.h
+  __cxx03/__algorithm/partition_copy.h
+  __cxx03/__algorithm/partition_point.h
+  __cxx03/__algorithm/pop_heap.h
+  __cxx03/__algorithm/prev_permutation.h
+  __cxx03/__algorithm/pstl.h
+  __cxx03/__algorithm/push_heap.h
+  __cxx03/__algorithm/ranges_adjacent_find.h
+  __cxx03/__algorithm/ranges_all_of.h
+  __cxx03/__algorithm/ranges_any_of.h
+  __cxx03/__algorithm/ranges_binary_search.h
+  __cxx03/__algorithm/ranges_clamp.h
+  __cxx03/__algorithm/ranges_contains.h
+  __cxx03/__algorithm/ranges_contains_subrange.h
+  __cxx03/__algorithm/ranges_copy.h
+  __cxx03/__algorithm/ranges_copy_backward.h
+  __cxx03/__algorithm/ranges_copy_if.h
+  __cxx03/__algorithm/ranges_copy_n.h
+  __cxx03/__algorithm/ranges_count.h
+  __cxx03/__algorithm/ranges_count_if.h
+  __cxx03/__algorithm/ranges_ends_with.h
+  __cxx03/__algorithm/ranges_equal.h
+  __cxx03/__algorithm/ranges_equal_range.h
+  __cxx03/__algorithm/ranges_fill.h
+  __cxx03/__algorithm/ranges_fill_n.h
+  __cxx03/__algorithm/ranges_find.h
+  __cxx03/__algorithm/ranges_find_end.h
+  __cxx03/__algorithm/ranges_find_first_of.h
+  __cxx03/__algorithm/ranges_find_if.h
+  __cxx03/__algorithm/ranges_find_if_not.h
+  __cxx03/__algorithm/ranges_find_last.h
+  __cxx03/__algorithm/ranges_for_each.h
+  __cxx03/__algorithm/ranges_for_each_n.h
+  __cxx03/__algorithm/ranges_generate.h
+  __cxx03/__algorithm/ranges_generate_n.h
+  __cxx03/__algorithm/ranges_includes.h
+  __cxx03/__algorithm/ranges_inplace_merge.h
+  __cxx03/__algorithm/ranges_is_heap.h
+  __cxx03/__algorithm/ranges_is_heap_until.h
+  __cxx03/__algorithm/ranges_is_partitioned.h
+  __cxx03/__algorithm/ranges_is_permutation.h
+  __cxx03/__algorithm/ranges_is_sorted.h
+  __cxx03/__algorithm/ranges_is_sorted_until.h
+  __cxx03/__algorithm/ranges_iterator_concept.h
+  __cxx03/__algorithm/ranges_lexicographical_compare.h
+  __cxx03/__algorithm/ranges_lower_bound.h
+  __cxx03/__algorithm/ranges_make_heap.h
+  __cxx03/__algorithm/ranges_max.h
+  __cxx03/__algorithm/ranges_max_element.h
+  __cxx03/__algorithm/ranges_merge.h
+  __cxx03/__algorithm/ranges_min.h
+  __cxx03/__algorithm/ranges_min_element.h
+  __cxx03/__algorithm/ranges_minmax.h
+  __cxx03/__algorithm/ranges_minmax_element.h
+  __cxx03/__algorithm/ranges_mismatch.h
+  __cxx03/__algorithm/ranges_move.h
+  __cxx03/__algorithm/ranges_move_backward.h
+  __cxx03/__algorithm/ranges_next_permutation.h
+  __cxx03/__algorithm/ranges_none_of.h
+  __cxx03/__algorithm/ranges_nth_element.h
+  __cxx03/__algorithm/ranges_partial_sort.h
+  __cxx03/__algorithm/ranges_partial_sort_copy.h
+  __cxx03/__algorithm/ranges_partition.h
+  __cxx03/__algorithm/ranges_partition_copy.h
+  __cxx03/__algorithm/ranges_partition_point.h
+  __cxx03/__algorithm/ranges_pop_heap.h
+  __cxx03/__algorithm/ranges_prev_permutation.h
+  __cxx03/__algorithm/ranges_push_heap.h
+  __cxx03/__algorithm/ranges_remove.h
+  __cxx03/__algorithm/ranges_remove_copy.h
+  __cxx03/__algorithm/ranges_remove_copy_if.h
+  __cxx03/__algorithm/ranges_remove_if.h
+  __cxx03/__algorithm/ranges_replace.h
+  __cxx03/__algorithm/ranges_replace_copy.h
+  __cxx03/__algorithm/ranges_replace_copy_if.h
+  __cxx03/__algorithm/ranges_replace_if.h
+  __cxx03/__algorithm/ranges_reverse.h
+  __cxx03/__algorithm/ranges_reverse_copy.h
+  __cxx03/__algorithm/ranges_rotate.h
+  __cxx03/__algorithm/ranges_rotate_copy.h
+  __cxx03/__algorithm/ranges_sample.h
+  __cxx03/__algorithm/ranges_search.h
+  __cxx03/__algorithm/ranges_search_n.h
+  __cxx03/__algorithm/ranges_set_
diff erence.h
+  __cxx03/__algorithm/ranges_set_intersection.h
+  __cxx03/__algorithm/ranges_set_symmetric_
diff erence.h
+  __cxx03/__algorithm/ranges_set_union.h
+  __cxx03/__algorithm/ranges_shuffle.h
+  __cxx03/__algorithm/ranges_sort.h
+  __cxx03/__algorithm/ranges_sort_heap.h
+  __cxx03/__algorithm/ranges_stable_partition.h
+  __cxx03/__algorithm/ranges_stable_sort.h
+  __cxx03/__algorithm/ranges_starts_with.h
+  __cxx03/__algorithm/ranges_swap_ranges.h
+  __cxx03/__algorithm/ranges_transform.h
+  __cxx03/__algorithm/ranges_unique.h
+  __cxx03/__algorithm/ranges_unique_copy.h
+  __cxx03/__algorithm/ranges_upper_bound.h
+  __cxx03/__algorithm/remove.h
+  __cxx03/__algorithm/remove_copy.h
+  __cxx03/__algorithm/remove_copy_if.h
+  __cxx03/__algorithm/remove_if.h
+  __cxx03/__algorithm/replace.h
+  __cxx03/__algorithm/replace_copy.h
+  __cxx03/__algorithm/replace_copy_if.h
+  __cxx03/__algorithm/replace_if.h
+  __cxx03/__algorithm/reverse.h
+  __cxx03/__algorithm/reverse_copy.h
+  __cxx03/__algorithm/rotate.h
+  __cxx03/__algorithm/rotate_copy.h
+  __cxx03/__algorithm/sample.h
+  __cxx03/__algorithm/search.h
+  __cxx03/__algorithm/search_n.h
+  __cxx03/__algorithm/set_
diff erence.h
+  __cxx03/__algorithm/set_intersection.h
+  __cxx03/__algorithm/set_symmetric_
diff erence.h
+  __cxx03/__algorithm/set_union.h
+  __cxx03/__algorithm/shift_left.h
+  __cxx03/__algorithm/shift_right.h
+  __cxx03/__algorithm/shuffle.h
+  __cxx03/__algorithm/sift_down.h
+  __cxx03/__algorithm/simd_utils.h
+  __cxx03/__algorithm/sort.h
+  __cxx03/__algorithm/sort_heap.h
+  __cxx03/__algorithm/stable_partition.h
+  __cxx03/__algorithm/stable_sort.h
+  __cxx03/__algorithm/swap_ranges.h
+  __cxx03/__algorithm/three_way_comp_ref_type.h
+  __cxx03/__algorithm/transform.h
+  __cxx03/__algorithm/uniform_random_bit_generator_adaptor.h
+  __cxx03/__algorithm/unique.h
+  __cxx03/__algorithm/unique_copy.h
+  __cxx03/__algorithm/unwrap_iter.h
+  __cxx03/__algorithm/unwrap_range.h
+  __cxx03/__algorithm/upper_bound.h
+  __cxx03/__assert
+  __cxx03/__atomic/aliases.h
+  __cxx03/__atomic/atomic.h
+  __cxx03/__atomic/atomic_base.h
+  __cxx03/__atomic/atomic_flag.h
+  __cxx03/__atomic/atomic_init.h
+  __cxx03/__atomic/atomic_lock_free.h
+  __cxx03/__atomic/atomic_ref.h
+  __cxx03/__atomic/atomic_sync.h
+  __cxx03/__atomic/check_memory_order.h
+  __cxx03/__atomic/contention_t.h
+  __cxx03/__atomic/cxx_atomic_impl.h
+  __cxx03/__atomic/fence.h
+  __cxx03/__atomic/is_always_lock_free.h
+  __cxx03/__atomic/kill_dependency.h
+  __cxx03/__atomic/memory_order.h
+  __cxx03/__atomic/to_gcc_order.h
+  __cxx03/__bit/bit_cast.h
+  __cxx03/__bit/bit_ceil.h
+  __cxx03/__bit/bit_floor.h
+  __cxx03/__bit/bit_log2.h
+  __cxx03/__bit/bit_width.h
+  __cxx03/__bit/blsr.h
+  __cxx03/__bit/byteswap.h
+  __cxx03/__bit/countl.h
+  __cxx03/__bit/countr.h
+  __cxx03/__bit/endian.h
+  __cxx03/__bit/has_single_bit.h
+  __cxx03/__bit/invert_if.h
+  __cxx03/__bit/popcount.h
+  __cxx03/__bit/rotate.h
+  __cxx03/__bit_reference
+  __cxx03/__charconv/chars_format.h
+  __cxx03/__charconv/from_chars_integral.h
+  __cxx03/__charconv/from_chars_result.h
+  __cxx03/__charconv/tables.h
+  __cxx03/__charconv/to_chars.h
+  __cxx03/__charconv/to_chars_base_10.h
+  __cxx03/__charconv/to_chars_floating_point.h
+  __cxx03/__charconv/to_chars_integral.h
+  __cxx03/__charconv/to_chars_result.h
+  __cxx03/__charconv/traits.h
+  __cxx03/__chrono/calendar.h
+  __cxx03/__chrono/concepts.h
+  __cxx03/__chrono/convert_to_timespec.h
+  __cxx03/__chrono/convert_to_tm.h
+  __cxx03/__chrono/day.h
+  __cxx03/__chrono/duration.h
+  __cxx03/__chrono/exception.h
+  __cxx03/__chrono/file_clock.h
+  __cxx03/__chrono/formatter.h
+  __cxx03/__chrono/hh_mm_ss.h
+  __cxx03/__chrono/high_resolution_clock.h
+  __cxx03/__chrono/leap_second.h
+  __cxx03/__chrono/literals.h
+  __cxx03/__chrono/local_info.h
+  __cxx03/__chrono/month.h
+  __cxx03/__chrono/month_weekday.h
+  __cxx03/__chrono/monthday.h
+  __cxx03/__chrono/ostream.h
+  __cxx03/__chrono/parser_std_format_spec.h
+  __cxx03/__chrono/statically_widen.h
+  __cxx03/__chrono/steady_clock.h
+  __cxx03/__chrono/sys_info.h
+  __cxx03/__chrono/system_clock.h
+  __cxx03/__chrono/time_point.h
+  __cxx03/__chrono/time_zone.h
+  __cxx03/__chrono/time_zone_link.h
+  __cxx03/__chrono/tzdb.h
+  __cxx03/__chrono/tzdb_list.h
+  __cxx03/__chrono/weekday.h
+  __cxx03/__chrono/year.h
+  __cxx03/__chrono/year_month.h
+  __cxx03/__chrono/year_month_day.h
+  __cxx03/__chrono/year_month_weekday.h
+  __cxx03/__chrono/zoned_time.h
+  __cxx03/__compare/common_comparison_category.h
+  __cxx03/__compare/compare_partial_order_fallback.h
+  __cxx03/__compare/compare_strong_order_fallback.h
+  __cxx03/__compare/compare_three_way.h
+  __cxx03/__compare/compare_three_way_result.h
+  __cxx03/__compare/compare_weak_order_fallback.h
+  __cxx03/__compare/is_eq.h
+  __cxx03/__compare/ordering.h
+  __cxx03/__compare/partial_order.h
+  __cxx03/__compare/strong_order.h
+  __cxx03/__compare/synth_three_way.h
+  __cxx03/__compare/three_way_comparable.h
+  __cxx03/__compare/weak_order.h
+  __cxx03/__concepts/arithmetic.h
+  __cxx03/__concepts/assignable.h
+  __cxx03/__concepts/boolean_testable.h
+  __cxx03/__concepts/class_or_enum.h
+  __cxx03/__concepts/common_reference_with.h
+  __cxx03/__concepts/common_with.h
+  __cxx03/__concepts/constructible.h
+  __cxx03/__concepts/convertible_to.h
+  __cxx03/__concepts/copyable.h
+  __cxx03/__concepts/derived_from.h
+  __cxx03/__concepts/destructible.h
+  __cxx03/__concepts/
diff erent_from.h
+  __cxx03/__concepts/equality_comparable.h
+  __cxx03/__concepts/invocable.h
+  __cxx03/__concepts/movable.h
+  __cxx03/__concepts/predicate.h
+  __cxx03/__concepts/regular.h
+  __cxx03/__concepts/relation.h
+  __cxx03/__concepts/same_as.h
+  __cxx03/__concepts/semiregular.h
+  __cxx03/__concepts/swappable.h
+  __cxx03/__concepts/totally_ordered.h
+  __cxx03/__condition_variable/condition_variable.h
+  __cxx03/__config
+  __cxx03/__configuration/abi.h
+  __cxx03/__configuration/availability.h
+  __cxx03/__configuration/compiler.h
+  __cxx03/__configuration/config_site_shim.h
+  __cxx03/__configuration/language.h
+  __cxx03/__configuration/platform.h
+  __cxx03/__coroutine/coroutine_handle.h
+  __cxx03/__coroutine/coroutine_traits.h
+  __cxx03/__coroutine/noop_coroutine_handle.h
+  __cxx03/__coroutine/trivial_awaitables.h
+  __cxx03/__debug_utils/randomize_range.h
+  __cxx03/__debug_utils/sanitizers.h
+  __cxx03/__debug_utils/strict_weak_ordering_check.h
+  __cxx03/__exception/exception.h
+  __cxx03/__exception/exception_ptr.h
+  __cxx03/__exception/nested_exception.h
+  __cxx03/__exception/operations.h
+  __cxx03/__exception/terminate.h
+  __cxx03/__expected/bad_expected_access.h
+  __cxx03/__expected/expected.h
+  __cxx03/__expected/unexpect.h
+  __cxx03/__expected/unexpected.h
+  __cxx03/__filesystem/copy_options.h
+  __cxx03/__filesystem/directory_entry.h
+  __cxx03/__filesystem/directory_iterator.h
+  __cxx03/__filesystem/directory_options.h
+  __cxx03/__filesystem/file_status.h
+  __cxx03/__filesystem/file_time_type.h
+  __cxx03/__filesystem/file_type.h
+  __cxx03/__filesystem/filesystem_error.h
+  __cxx03/__filesystem/operations.h
+  __cxx03/__filesystem/path.h
+  __cxx03/__filesystem/path_iterator.h
+  __cxx03/__filesystem/perm_options.h
+  __cxx03/__filesystem/perms.h
+  __cxx03/__filesystem/recursive_directory_iterator.h
+  __cxx03/__filesystem/space_info.h
+  __cxx03/__filesystem/u8path.h
+  __cxx03/__format/buffer.h
+  __cxx03/__format/concepts.h
+  __cxx03/__format/container_adaptor.h
+  __cxx03/__format/enable_insertable.h
+  __cxx03/__format/escaped_output_table.h
+  __cxx03/__format/extended_grapheme_cluster_table.h
+  __cxx03/__format/format_arg.h
+  __cxx03/__format/format_arg_store.h
+  __cxx03/__format/format_args.h
+  __cxx03/__format/format_context.h
+  __cxx03/__format/format_error.h
+  __cxx03/__format/format_functions.h
+  __cxx03/__format/format_parse_context.h
+  __cxx03/__format/format_string.h
+  __cxx03/__format/format_to_n_result.h
+  __cxx03/__format/formatter.h
+  __cxx03/__format/formatter_bool.h
+  __cxx03/__format/formatter_char.h
+  __cxx03/__format/formatter_floating_point.h
+  __cxx03/__format/formatter_integer.h
+  __cxx03/__format/formatter_integral.h
+  __cxx03/__format/formatter_output.h
+  __cxx03/__format/formatter_pointer.h
+  __cxx03/__format/formatter_string.h
+  __cxx03/__format/formatter_tuple.h
+  __cxx03/__format/indic_conjunct_break_table.h
+  __cxx03/__format/parser_std_format_spec.h
+  __cxx03/__format/range_default_formatter.h
+  __cxx03/__format/range_formatter.h
+  __cxx03/__format/unicode.h
+  __cxx03/__format/width_estimation_table.h
+  __cxx03/__format/write_escaped.h
+  __cxx03/__functional/binary_function.h
+  __cxx03/__functional/binary_negate.h
+  __cxx03/__functional/bind.h
+  __cxx03/__functional/bind_back.h
+  __cxx03/__functional/bind_front.h
+  __cxx03/__functional/binder1st.h
+  __cxx03/__functional/binder2nd.h
+  __cxx03/__functional/boyer_moore_searcher.h
+  __cxx03/__functional/compose.h
+  __cxx03/__functional/default_searcher.h
+  __cxx03/__functional/function.h
+  __cxx03/__functional/hash.h
+  __cxx03/__functional/identity.h
+  __cxx03/__functional/invoke.h
+  __cxx03/__functional/is_transparent.h
+  __cxx03/__functional/mem_fn.h
+  __cxx03/__functional/mem_fun_ref.h
+  __cxx03/__functional/not_fn.h
+  __cxx03/__functional/operations.h
+  __cxx03/__functional/perfect_forward.h
+  __cxx03/__functional/pointer_to_binary_function.h
+  __cxx03/__functional/pointer_to_unary_function.h
+  __cxx03/__functional/ranges_operations.h
+  __cxx03/__functional/reference_wrapper.h
+  __cxx03/__functional/unary_function.h
+  __cxx03/__functional/unary_negate.h
+  __cxx03/__functional/weak_result_type.h
+  __cxx03/__fwd/array.h
+  __cxx03/__fwd/bit_reference.h
+  __cxx03/__fwd/complex.h
+  __cxx03/__fwd/deque.h
+  __cxx03/__fwd/format.h
+  __cxx03/__fwd/fstream.h
+  __cxx03/__fwd/functional.h
+  __cxx03/__fwd/ios.h
+  __cxx03/__fwd/istream.h
+  __cxx03/__fwd/mdspan.h
+  __cxx03/__fwd/memory.h
+  __cxx03/__fwd/memory_resource.h
+  __cxx03/__fwd/ostream.h
+  __cxx03/__fwd/pair.h
+  __cxx03/__fwd/queue.h
+  __cxx03/__fwd/span.h
+  __cxx03/__fwd/sstream.h
+  __cxx03/__fwd/stack.h
+  __cxx03/__fwd/streambuf.h
+  __cxx03/__fwd/string.h
+  __cxx03/__fwd/string_view.h
+  __cxx03/__fwd/subrange.h
+  __cxx03/__fwd/tuple.h
+  __cxx03/__fwd/vector.h
+  __cxx03/__hash_table
+  __cxx03/__ios/fpos.h
+  __cxx03/__iterator/access.h
+  __cxx03/__iterator/advance.h
+  __cxx03/__iterator/aliasing_iterator.h
+  __cxx03/__iterator/back_insert_iterator.h
+  __cxx03/__iterator/bounded_iter.h
+  __cxx03/__iterator/common_iterator.h
+  __cxx03/__iterator/concepts.h
+  __cxx03/__iterator/counted_iterator.h
+  __cxx03/__iterator/cpp17_iterator_concepts.h
+  __cxx03/__iterator/data.h
+  __cxx03/__iterator/default_sentinel.h
+  __cxx03/__iterator/distance.h
+  __cxx03/__iterator/empty.h
+  __cxx03/__iterator/erase_if_container.h
+  __cxx03/__iterator/front_insert_iterator.h
+  __cxx03/__iterator/incrementable_traits.h
+  __cxx03/__iterator/indirectly_comparable.h
+  __cxx03/__iterator/insert_iterator.h
+  __cxx03/__iterator/istream_iterator.h
+  __cxx03/__iterator/istreambuf_iterator.h
+  __cxx03/__iterator/iter_move.h
+  __cxx03/__iterator/iter_swap.h
+  __cxx03/__iterator/iterator.h
+  __cxx03/__iterator/iterator_traits.h
+  __cxx03/__iterator/iterator_with_data.h
+  __cxx03/__iterator/mergeable.h
+  __cxx03/__iterator/move_iterator.h
+  __cxx03/__iterator/move_sentinel.h
+  __cxx03/__iterator/next.h
+  __cxx03/__iterator/ostream_iterator.h
+  __cxx03/__iterator/ostreambuf_iterator.h
+  __cxx03/__iterator/permutable.h
+  __cxx03/__iterator/prev.h
+  __cxx03/__iterator/projected.h
+  __cxx03/__iterator/ranges_iterator_traits.h
+  __cxx03/__iterator/readable_traits.h
+  __cxx03/__iterator/reverse_access.h
+  __cxx03/__iterator/reverse_iterator.h
+  __cxx03/__iterator/segmented_iterator.h
+  __cxx03/__iterator/size.h
+  __cxx03/__iterator/sortable.h
+  __cxx03/__iterator/unreachable_sentinel.h
+  __cxx03/__iterator/wrap_iter.h
+  __cxx03/__locale
+  __cxx03/__locale_dir/locale_base_api.h
+  __cxx03/__locale_dir/locale_base_api/android.h
+  __cxx03/__locale_dir/locale_base_api/bsd_locale_defaults.h
+  __cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
+  __cxx03/__locale_dir/locale_base_api/fuchsia.h
+  __cxx03/__locale_dir/locale_base_api/ibm.h
+  __cxx03/__locale_dir/locale_base_api/locale_guard.h
+  __cxx03/__locale_dir/locale_base_api/musl.h
+  __cxx03/__locale_dir/locale_base_api/newlib.h
+  __cxx03/__locale_dir/locale_base_api/openbsd.h
+  __cxx03/__locale_dir/locale_base_api/win32.h
+  __cxx03/__math/abs.h
+  __cxx03/__math/copysign.h
+  __cxx03/__math/error_functions.h
+  __cxx03/__math/exponential_functions.h
+  __cxx03/__math/fdim.h
+  __cxx03/__math/fma.h
+  __cxx03/__math/gamma.h
+  __cxx03/__math/hyperbolic_functions.h
+  __cxx03/__math/hypot.h
+  __cxx03/__math/inverse_hyperbolic_functions.h
+  __cxx03/__math/inverse_trigonometric_functions.h
+  __cxx03/__math/logarithms.h
+  __cxx03/__math/min_max.h
+  __cxx03/__math/modulo.h
+  __cxx03/__math/remainder.h
+  __cxx03/__math/roots.h
+  __cxx03/__math/rounding_functions.h
+  __cxx03/__math/special_functions.h
+  __cxx03/__math/traits.h
+  __cxx03/__math/trigonometric_functions.h
+  __cxx03/__mbstate_t.h
+  __cxx03/__mdspan/default_accessor.h
+  __cxx03/__mdspan/extents.h
+  __cxx03/__mdspan/layout_left.h
+  __cxx03/__mdspan/layout_right.h
+  __cxx03/__mdspan/layout_stride.h
+  __cxx03/__mdspan/mdspan.h
+  __cxx03/__memory/addressof.h
+  __cxx03/__memory/align.h
+  __cxx03/__memory/aligned_alloc.h
+  __cxx03/__memory/allocate_at_least.h
+  __cxx03/__memory/allocation_guard.h
+  __cxx03/__memory/allocator.h
+  __cxx03/__memory/allocator_arg_t.h
+  __cxx03/__memory/allocator_destructor.h
+  __cxx03/__memory/allocator_traits.h
+  __cxx03/__memory/assume_aligned.h
+  __cxx03/__memory/auto_ptr.h
+  __cxx03/__memory/builtin_new_allocator.h
+  __cxx03/__memory/compressed_pair.h
+  __cxx03/__memory/concepts.h
+  __cxx03/__memory/construct_at.h
+  __cxx03/__memory/destruct_n.h
+  __cxx03/__memory/inout_ptr.h
+  __cxx03/__memory/out_ptr.h
+  __cxx03/__memory/pointer_traits.h
+  __cxx03/__memory/ranges_construct_at.h
+  __cxx03/__memory/ranges_uninitialized_algorithms.h
+  __cxx03/__memory/raw_storage_iterator.h
+  __cxx03/__memory/shared_ptr.h
+  __cxx03/__memory/swap_allocator.h
+  __cxx03/__memory/temp_value.h
+  __cxx03/__memory/temporary_buffer.h
+  __cxx03/__memory/uninitialized_algorithms.h
+  __cxx03/__memory/unique_ptr.h
+  __cxx03/__memory/uses_allocator.h
+  __cxx03/__memory/uses_allocator_construction.h
+  __cxx03/__memory/voidify.h
+  __cxx03/__memory_resource/memory_resource.h
+  __cxx03/__memory_resource/monotonic_buffer_resource.h
+  __cxx03/__memory_resource/polymorphic_allocator.h
+  __cxx03/__memory_resource/pool_options.h
+  __cxx03/__memory_resource/synchronized_pool_resource.h
+  __cxx03/__memory_resource/unsynchronized_pool_resource.h
+  __cxx03/__mutex/lock_guard.h
+  __cxx03/__mutex/mutex.h
+  __cxx03/__mutex/once_flag.h
+  __cxx03/__mutex/tag_types.h
+  __cxx03/__mutex/unique_lock.h
+  __cxx03/__node_handle
+  __cxx03/__numeric/accumulate.h
+  __cxx03/__numeric/adjacent_
diff erence.h
+  __cxx03/__numeric/exclusive_scan.h
+  __cxx03/__numeric/gcd_lcm.h
+  __cxx03/__numeric/inclusive_scan.h
+  __cxx03/__numeric/inner_product.h
+  __cxx03/__numeric/iota.h
+  __cxx03/__numeric/midpoint.h
+  __cxx03/__numeric/partial_sum.h
+  __cxx03/__numeric/pstl.h
+  __cxx03/__numeric/reduce.h
+  __cxx03/__numeric/saturation_arithmetic.h
+  __cxx03/__numeric/transform_exclusive_scan.h
+  __cxx03/__numeric/transform_inclusive_scan.h
+  __cxx03/__numeric/transform_reduce.h
+  __cxx03/__ostream/basic_ostream.h
+  __cxx03/__ostream/print.h
+  __cxx03/__pstl/backend.h
+  __cxx03/__pstl/backend_fwd.h
+  __cxx03/__pstl/backends/default.h
+  __cxx03/__pstl/backends/libdispatch.h
+  __cxx03/__pstl/backends/serial.h
+  __cxx03/__pstl/backends/std_thread.h
+  __cxx03/__pstl/cpu_algos/any_of.h
+  __cxx03/__pstl/cpu_algos/cpu_traits.h
+  __cxx03/__pstl/cpu_algos/fill.h
+  __cxx03/__pstl/cpu_algos/find_if.h
+  __cxx03/__pstl/cpu_algos/for_each.h
+  __cxx03/__pstl/cpu_algos/merge.h
+  __cxx03/__pstl/cpu_algos/stable_sort.h
+  __cxx03/__pstl/cpu_algos/transform.h
+  __cxx03/__pstl/cpu_algos/transform_reduce.h
+  __cxx03/__pstl/dispatch.h
+  __cxx03/__pstl/handle_exception.h
+  __cxx03/__random/bernoulli_distribution.h
+  __cxx03/__random/binomial_distribution.h
+  __cxx03/__random/cauchy_distribution.h
+  __cxx03/__random/chi_squared_distribution.h
+  __cxx03/__random/clamp_to_integral.h
+  __cxx03/__random/default_random_engine.h
+  __cxx03/__random/discard_block_engine.h
+  __cxx03/__random/discrete_distribution.h
+  __cxx03/__random/exponential_distribution.h
+  __cxx03/__random/extreme_value_distribution.h
+  __cxx03/__random/fisher_f_distribution.h
+  __cxx03/__random/gamma_distribution.h
+  __cxx03/__random/generate_canonical.h
+  __cxx03/__random/geometric_distribution.h
+  __cxx03/__random/independent_bits_engine.h
+  __cxx03/__random/is_seed_sequence.h
+  __cxx03/__random/is_valid.h
+  __cxx03/__random/knuth_b.h
+  __cxx03/__random/linear_congruential_engine.h
+  __cxx03/__random/log2.h
+  __cxx03/__random/lognormal_distribution.h
+  __cxx03/__random/mersenne_twister_engine.h
+  __cxx03/__random/negative_binomial_distribution.h
+  __cxx03/__random/normal_distribution.h
+  __cxx03/__random/piecewise_constant_distribution.h
+  __cxx03/__random/piecewise_linear_distribution.h
+  __cxx03/__random/poisson_distribution.h
+  __cxx03/__random/random_device.h
+  __cxx03/__random/ranlux.h
+  __cxx03/__random/seed_seq.h
+  __cxx03/__random/shuffle_order_engine.h
+  __cxx03/__random/student_t_distribution.h
+  __cxx03/__random/subtract_with_carry_engine.h
+  __cxx03/__random/uniform_int_distribution.h
+  __cxx03/__random/uniform_random_bit_generator.h
+  __cxx03/__random/uniform_real_distribution.h
+  __cxx03/__random/weibull_distribution.h
+  __cxx03/__ranges/access.h
+  __cxx03/__ranges/all.h
+  __cxx03/__ranges/as_rvalue_view.h
+  __cxx03/__ranges/chunk_by_view.h
+  __cxx03/__ranges/common_view.h
+  __cxx03/__ranges/concepts.h
+  __cxx03/__ranges/container_compatible_range.h
+  __cxx03/__ranges/counted.h
+  __cxx03/__ranges/dangling.h
+  __cxx03/__ranges/data.h
+  __cxx03/__ranges/drop_view.h
+  __cxx03/__ranges/drop_while_view.h
+  __cxx03/__ranges/elements_view.h
+  __cxx03/__ranges/empty.h
+  __cxx03/__ranges/empty_view.h
+  __cxx03/__ranges/enable_borrowed_range.h
+  __cxx03/__ranges/enable_view.h
+  __cxx03/__ranges/filter_view.h
+  __cxx03/__ranges/from_range.h
+  __cxx03/__ranges/iota_view.h
+  __cxx03/__ranges/istream_view.h
+  __cxx03/__ranges/join_view.h
+  __cxx03/__ranges/lazy_split_view.h
+  __cxx03/__ranges/movable_box.h
+  __cxx03/__ranges/non_propagating_cache.h
+  __cxx03/__ranges/owning_view.h
+  __cxx03/__ranges/range_adaptor.h
+  __cxx03/__ranges/rbegin.h
+  __cxx03/__ranges/ref_view.h
+  __cxx03/__ranges/rend.h
+  __cxx03/__ranges/repeat_view.h
+  __cxx03/__ranges/reverse_view.h
+  __cxx03/__ranges/single_view.h
+  __cxx03/__ranges/size.h
+  __cxx03/__ranges/split_view.h
+  __cxx03/__ranges/subrange.h
+  __cxx03/__ranges/take_view.h
+  __cxx03/__ranges/take_while_view.h
+  __cxx03/__ranges/to.h
+  __cxx03/__ranges/transform_view.h
+  __cxx03/__ranges/view_interface.h
+  __cxx03/__ranges/views.h
+  __cxx03/__ranges/zip_view.h
+  __cxx03/__split_buffer
+  __cxx03/__std_clang_module
+  __cxx03/__std_mbstate_t.h
+  __cxx03/__stop_token/atomic_unique_lock.h
+  __cxx03/__stop_token/intrusive_list_view.h
+  __cxx03/__stop_token/intrusive_shared_ptr.h
+  __cxx03/__stop_token/stop_callback.h
+  __cxx03/__stop_token/stop_source.h
+  __cxx03/__stop_token/stop_state.h
+  __cxx03/__stop_token/stop_token.h
+  __cxx03/__string/char_traits.h
+  __cxx03/__string/constexpr_c_functions.h
+  __cxx03/__string/extern_template_lists.h
+  __cxx03/__support/ibm/gettod_zos.h
+  __cxx03/__support/ibm/locale_mgmt_zos.h
+  __cxx03/__support/ibm/nanosleep.h
+  __cxx03/__support/xlocale/__nop_locale_mgmt.h
+  __cxx03/__support/xlocale/__posix_l_fallback.h
+  __cxx03/__support/xlocale/__strtonum_fallback.h
+  __cxx03/__system_error/errc.h
+  __cxx03/__system_error/error_category.h
+  __cxx03/__system_error/error_code.h
+  __cxx03/__system_error/error_condition.h
+  __cxx03/__system_error/system_error.h
+  __cxx03/__thread/formatter.h
+  __cxx03/__thread/id.h
+  __cxx03/__thread/jthread.h
+  __cxx03/__thread/poll_with_backoff.h
+  __cxx03/__thread/support.h
+  __cxx03/__thread/support/c11.h
+  __cxx03/__thread/support/external.h
+  __cxx03/__thread/support/pthread.h
+  __cxx03/__thread/support/windows.h
+  __cxx03/__thread/this_thread.h
+  __cxx03/__thread/thread.h
+  __cxx03/__thread/timed_backoff_policy.h
+  __cxx03/__tree
+  __cxx03/__tuple/find_index.h
+  __cxx03/__tuple/ignore.h
+  __cxx03/__tuple/make_tuple_types.h
+  __cxx03/__tuple/sfinae_helpers.h
+  __cxx03/__tuple/tuple_element.h
+  __cxx03/__tuple/tuple_indices.h
+  __cxx03/__tuple/tuple_like.h
+  __cxx03/__tuple/tuple_like_ext.h
+  __cxx03/__tuple/tuple_like_no_subrange.h
+  __cxx03/__tuple/tuple_size.h
+  __cxx03/__tuple/tuple_types.h
+  __cxx03/__type_traits/add_const.h
+  __cxx03/__type_traits/add_cv.h
+  __cxx03/__type_traits/add_lvalue_reference.h
+  __cxx03/__type_traits/add_pointer.h
+  __cxx03/__type_traits/add_rvalue_reference.h
+  __cxx03/__type_traits/add_volatile.h
+  __cxx03/__type_traits/aligned_storage.h
+  __cxx03/__type_traits/aligned_union.h
+  __cxx03/__type_traits/alignment_of.h
+  __cxx03/__type_traits/can_extract_key.h
+  __cxx03/__type_traits/common_reference.h
+  __cxx03/__type_traits/common_type.h
+  __cxx03/__type_traits/conditional.h
+  __cxx03/__type_traits/conjunction.h
+  __cxx03/__type_traits/copy_cv.h
+  __cxx03/__type_traits/copy_cvref.h
+  __cxx03/__type_traits/datasizeof.h
+  __cxx03/__type_traits/decay.h
+  __cxx03/__type_traits/dependent_type.h
+  __cxx03/__type_traits/desugars_to.h
+  __cxx03/__type_traits/disjunction.h
+  __cxx03/__type_traits/enable_if.h
+  __cxx03/__type_traits/extent.h
+  __cxx03/__type_traits/has_unique_object_representation.h
+  __cxx03/__type_traits/has_virtual_destructor.h
+  __cxx03/__type_traits/integral_constant.h
+  __cxx03/__type_traits/invoke.h
+  __cxx03/__type_traits/is_abstract.h
+  __cxx03/__type_traits/is_aggregate.h
+  __cxx03/__type_traits/is_allocator.h
+  __cxx03/__type_traits/is_always_bitcastable.h
+  __cxx03/__type_traits/is_arithmetic.h
+  __cxx03/__type_traits/is_array.h
+  __cxx03/__type_traits/is_assignable.h
+  __cxx03/__type_traits/is_base_of.h
+  __cxx03/__type_traits/is_bounded_array.h
+  __cxx03/__type_traits/is_callable.h
+  __cxx03/__type_traits/is_char_like_type.h
+  __cxx03/__type_traits/is_class.h
+  __cxx03/__type_traits/is_compound.h
+  __cxx03/__type_traits/is_const.h
+  __cxx03/__type_traits/is_constant_evaluated.h
+  __cxx03/__type_traits/is_constructible.h
+  __cxx03/__type_traits/is_convertible.h
+  __cxx03/__type_traits/is_core_convertible.h
+  __cxx03/__type_traits/is_destructible.h
+  __cxx03/__type_traits/is_empty.h
+  __cxx03/__type_traits/is_enum.h
+  __cxx03/__type_traits/is_equality_comparable.h
+  __cxx03/__type_traits/is_execution_policy.h
+  __cxx03/__type_traits/is_final.h
+  __cxx03/__type_traits/is_floating_point.h
+  __cxx03/__type_traits/is_function.h
+  __cxx03/__type_traits/is_fundamental.h
+  __cxx03/__type_traits/is_implicitly_default_constructible.h
+  __cxx03/__type_traits/is_integral.h
+  __cxx03/__type_traits/is_literal_type.h
+  __cxx03/__type_traits/is_member_pointer.h
+  __cxx03/__type_traits/is_nothrow_assignable.h
+  __cxx03/__type_traits/is_nothrow_constructible.h
+  __cxx03/__type_traits/is_nothrow_convertible.h
+  __cxx03/__type_traits/is_nothrow_destructible.h
+  __cxx03/__type_traits/is_null_pointer.h
+  __cxx03/__type_traits/is_object.h
+  __cxx03/__type_traits/is_pod.h
+  __cxx03/__type_traits/is_pointer.h
+  __cxx03/__type_traits/is_polymorphic.h
+  __cxx03/__type_traits/is_primary_template.h
+  __cxx03/__type_traits/is_reference.h
+  __cxx03/__type_traits/is_reference_wrapper.h
+  __cxx03/__type_traits/is_referenceable.h
+  __cxx03/__type_traits/is_same.h
+  __cxx03/__type_traits/is_scalar.h
+  __cxx03/__type_traits/is_signed.h
+  __cxx03/__type_traits/is_signed_integer.h
+  __cxx03/__type_traits/is_specialization.h
+  __cxx03/__type_traits/is_standard_layout.h
+  __cxx03/__type_traits/is_swappable.h
+  __cxx03/__type_traits/is_trivial.h
+  __cxx03/__type_traits/is_trivially_assignable.h
+  __cxx03/__type_traits/is_trivially_constructible.h
+  __cxx03/__type_traits/is_trivially_copyable.h
+  __cxx03/__type_traits/is_trivially_destructible.h
+  __cxx03/__type_traits/is_trivially_lexicographically_comparable.h
+  __cxx03/__type_traits/is_trivially_relocatable.h
+  __cxx03/__type_traits/is_unbounded_array.h
+  __cxx03/__type_traits/is_union.h
+  __cxx03/__type_traits/is_unsigned.h
+  __cxx03/__type_traits/is_unsigned_integer.h
+  __cxx03/__type_traits/is_valid_expansion.h
+  __cxx03/__type_traits/is_void.h
+  __cxx03/__type_traits/is_volatile.h
+  __cxx03/__type_traits/lazy.h
+  __cxx03/__type_traits/make_32_64_or_128_bit.h
+  __cxx03/__type_traits/make_const_lvalue_ref.h
+  __cxx03/__type_traits/make_signed.h
+  __cxx03/__type_traits/make_unsigned.h
+  __cxx03/__type_traits/maybe_const.h
+  __cxx03/__type_traits/nat.h
+  __cxx03/__type_traits/negation.h
+  __cxx03/__type_traits/noexcept_move_assign_container.h
+  __cxx03/__type_traits/promote.h
+  __cxx03/__type_traits/rank.h
+  __cxx03/__type_traits/remove_all_extents.h
+  __cxx03/__type_traits/remove_const.h
+  __cxx03/__type_traits/remove_const_ref.h
+  __cxx03/__type_traits/remove_cv.h
+  __cxx03/__type_traits/remove_cvref.h
+  __cxx03/__type_traits/remove_extent.h
+  __cxx03/__type_traits/remove_pointer.h
+  __cxx03/__type_traits/remove_reference.h
+  __cxx03/__type_traits/remove_volatile.h
+  __cxx03/__type_traits/result_of.h
+  __cxx03/__type_traits/strip_signature.h
+  __cxx03/__type_traits/type_identity.h
+  __cxx03/__type_traits/type_list.h
+  __cxx03/__type_traits/underlying_type.h
+  __cxx03/__type_traits/unwrap_ref.h
+  __cxx03/__type_traits/void_t.h
+  __cxx03/__undef_macros
+  __cxx03/__utility/as_const.h
+  __cxx03/__utility/as_lvalue.h
+  __cxx03/__utility/auto_cast.h
+  __cxx03/__utility/cmp.h
+  __cxx03/__utility/convert_to_integral.h
+  __cxx03/__utility/declval.h
+  __cxx03/__utility/empty.h
+  __cxx03/__utility/exception_guard.h
+  __cxx03/__utility/exchange.h
+  __cxx03/__utility/forward.h
+  __cxx03/__utility/forward_like.h
+  __cxx03/__utility/in_place.h
+  __cxx03/__utility/integer_sequence.h
+  __cxx03/__utility/is_pointer_in_range.h
+  __cxx03/__utility/is_valid_range.h
+  __cxx03/__utility/move.h
+  __cxx03/__utility/no_destroy.h
+  __cxx03/__utility/pair.h
+  __cxx03/__utility/piecewise_construct.h
+  __cxx03/__utility/priority_tag.h
+  __cxx03/__utility/private_constructor_tag.h
+  __cxx03/__utility/rel_ops.h
+  __cxx03/__utility/small_buffer.h
+  __cxx03/__utility/swap.h
+  __cxx03/__utility/to_underlying.h
+  __cxx03/__utility/unreachable.h
+  __cxx03/__variant/monostate.h
+  __cxx03/__verbose_abort
+  __cxx03/algorithm
+  __cxx03/any
+  __cxx03/array
+  __cxx03/atomic
+  __cxx03/barrier
+  __cxx03/bit
+  __cxx03/bitset
+  __cxx03/cassert
+  __cxx03/ccomplex
+  __cxx03/cctype
+  __cxx03/cerrno
+  __cxx03/cfenv
+  __cxx03/cfloat
+  __cxx03/charconv
+  __cxx03/chrono
+  __cxx03/cinttypes
+  __cxx03/ciso646
+  __cxx03/climits
+  __cxx03/clocale
+  __cxx03/cmath
+  __cxx03/codecvt
+  __cxx03/compare
+  __cxx03/complex
+  __cxx03/complex.h
+  __cxx03/concepts
+  __cxx03/condition_variable
+  __cxx03/coroutine
+  __cxx03/csetjmp
+  __cxx03/csignal
+  __cxx03/cstdarg
+  __cxx03/cstdbool
+  __cxx03/cstddef
+  __cxx03/cstdint
+  __cxx03/cstdio
+  __cxx03/cstdlib
+  __cxx03/cstring
+  __cxx03/ctgmath
+  __cxx03/ctime
+  __cxx03/ctype.h
+  __cxx03/cuchar
+  __cxx03/cwchar
+  __cxx03/cwctype
+  __cxx03/deque
+  __cxx03/errno.h
+  __cxx03/exception
+  __cxx03/execution
+  __cxx03/expected
+  __cxx03/experimental/__config
+  __cxx03/experimental/__simd/aligned_tag.h
+  __cxx03/experimental/__simd/declaration.h
+  __cxx03/experimental/__simd/reference.h
+  __cxx03/experimental/__simd/scalar.h
+  __cxx03/experimental/__simd/simd.h
+  __cxx03/experimental/__simd/simd_mask.h
+  __cxx03/experimental/__simd/traits.h
+  __cxx03/experimental/__simd/utility.h
+  __cxx03/experimental/__simd/vec_ext.h
+  __cxx03/experimental/iterator
+  __cxx03/experimental/memory
+  __cxx03/experimental/propagate_const
+  __cxx03/experimental/simd
+  __cxx03/experimental/type_traits
+  __cxx03/experimental/utility
+  __cxx03/ext/__hash
+  __cxx03/ext/hash_map
+  __cxx03/ext/hash_set
+  __cxx03/fenv.h
+  __cxx03/filesystem
+  __cxx03/float.h
+  __cxx03/format
+  __cxx03/forward_list
+  __cxx03/fstream
+  __cxx03/functional
+  __cxx03/future
+  __cxx03/initializer_list
+  __cxx03/inttypes.h
+  __cxx03/iomanip
+  __cxx03/ios
+  __cxx03/iosfwd
+  __cxx03/iostream
+  __cxx03/istream
+  __cxx03/iterator
+  __cxx03/latch
+  __cxx03/limits
+  __cxx03/list
+  __cxx03/locale
+  __cxx03/locale.h
+  __cxx03/map
+  __cxx03/math.h
+  __cxx03/mdspan
+  __cxx03/memory
+  __cxx03/memory_resource
+  __cxx03/module.modulemap
+  __cxx03/mutex
+  __cxx03/new
+  __cxx03/numbers
+  __cxx03/numeric
+  __cxx03/optional
+  __cxx03/ostream
+  __cxx03/print
+  __cxx03/queue
+  __cxx03/random
+  __cxx03/ranges
+  __cxx03/ratio
+  __cxx03/regex
+  __cxx03/scoped_allocator
+  __cxx03/semaphore
+  __cxx03/set
+  __cxx03/shared_mutex
+  __cxx03/source_location
+  __cxx03/span
+  __cxx03/sstream
+  __cxx03/stack
+  __cxx03/stdatomic.h
+  __cxx03/stdbool.h
+  __cxx03/stddef.h
+  __cxx03/stdexcept
+  __cxx03/stdint.h
+  __cxx03/stdio.h
+  __cxx03/stdlib.h
+  __cxx03/stop_token
+  __cxx03/streambuf
+  __cxx03/string
+  __cxx03/string.h
+  __cxx03/string_view
+  __cxx03/strstream
+  __cxx03/syncstream
+  __cxx03/system_error
+  __cxx03/tgmath.h
+  __cxx03/thread
+  __cxx03/tuple
+  __cxx03/type_traits
+  __cxx03/typeindex
+  __cxx03/typeinfo
+  __cxx03/uchar.h
+  __cxx03/unordered_map
+  __cxx03/unordered_set
+  __cxx03/utility
+  __cxx03/valarray
+  __cxx03/variant
+  __cxx03/vector
+  __cxx03/version
+  __cxx03/wchar.h
+  __cxx03/wctype.h
   )
 
 configure_file("__config_site.in" "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site" @ONLY)

diff  --git a/libcxx/include/__cxx03/CMakeLists.txt b/libcxx/include/__cxx03/CMakeLists.txt
deleted file mode 100644
index b61442da89d4bf..00000000000000
--- a/libcxx/include/__cxx03/CMakeLists.txt
+++ /dev/null
@@ -1,1092 +0,0 @@
-set(files
-  __algorithm/adjacent_find.h
-  __algorithm/all_of.h
-  __algorithm/any_of.h
-  __algorithm/binary_search.h
-  __algorithm/clamp.h
-  __algorithm/comp.h
-  __algorithm/comp_ref_type.h
-  __algorithm/copy.h
-  __algorithm/copy_backward.h
-  __algorithm/copy_if.h
-  __algorithm/copy_move_common.h
-  __algorithm/copy_n.h
-  __algorithm/count.h
-  __algorithm/count_if.h
-  __algorithm/equal.h
-  __algorithm/equal_range.h
-  __algorithm/fill.h
-  __algorithm/fill_n.h
-  __algorithm/find.h
-  __algorithm/find_end.h
-  __algorithm/find_first_of.h
-  __algorithm/find_if.h
-  __algorithm/find_if_not.h
-  __algorithm/find_segment_if.h
-  __algorithm/fold.h
-  __algorithm/for_each.h
-  __algorithm/for_each_n.h
-  __algorithm/for_each_segment.h
-  __algorithm/generate.h
-  __algorithm/generate_n.h
-  __algorithm/half_positive.h
-  __algorithm/in_found_result.h
-  __algorithm/in_fun_result.h
-  __algorithm/in_in_out_result.h
-  __algorithm/in_in_result.h
-  __algorithm/in_out_out_result.h
-  __algorithm/in_out_result.h
-  __algorithm/includes.h
-  __algorithm/inplace_merge.h
-  __algorithm/is_heap.h
-  __algorithm/is_heap_until.h
-  __algorithm/is_partitioned.h
-  __algorithm/is_permutation.h
-  __algorithm/is_sorted.h
-  __algorithm/is_sorted_until.h
-  __algorithm/iter_swap.h
-  __algorithm/iterator_operations.h
-  __algorithm/lexicographical_compare.h
-  __algorithm/lexicographical_compare_three_way.h
-  __algorithm/lower_bound.h
-  __algorithm/make_heap.h
-  __algorithm/make_projected.h
-  __algorithm/max.h
-  __algorithm/max_element.h
-  __algorithm/merge.h
-  __algorithm/min.h
-  __algorithm/min_element.h
-  __algorithm/min_max_result.h
-  __algorithm/minmax.h
-  __algorithm/minmax_element.h
-  __algorithm/mismatch.h
-  __algorithm/move.h
-  __algorithm/move_backward.h
-  __algorithm/next_permutation.h
-  __algorithm/none_of.h
-  __algorithm/nth_element.h
-  __algorithm/partial_sort.h
-  __algorithm/partial_sort_copy.h
-  __algorithm/partition.h
-  __algorithm/partition_copy.h
-  __algorithm/partition_point.h
-  __algorithm/pop_heap.h
-  __algorithm/prev_permutation.h
-  __algorithm/pstl.h
-  __algorithm/push_heap.h
-  __algorithm/ranges_adjacent_find.h
-  __algorithm/ranges_all_of.h
-  __algorithm/ranges_any_of.h
-  __algorithm/ranges_binary_search.h
-  __algorithm/ranges_clamp.h
-  __algorithm/ranges_contains.h
-  __algorithm/ranges_contains_subrange.h
-  __algorithm/ranges_copy.h
-  __algorithm/ranges_copy_backward.h
-  __algorithm/ranges_copy_if.h
-  __algorithm/ranges_copy_n.h
-  __algorithm/ranges_count.h
-  __algorithm/ranges_count_if.h
-  __algorithm/ranges_ends_with.h
-  __algorithm/ranges_equal.h
-  __algorithm/ranges_equal_range.h
-  __algorithm/ranges_fill.h
-  __algorithm/ranges_fill_n.h
-  __algorithm/ranges_find.h
-  __algorithm/ranges_find_end.h
-  __algorithm/ranges_find_first_of.h
-  __algorithm/ranges_find_if.h
-  __algorithm/ranges_find_if_not.h
-  __algorithm/ranges_find_last.h
-  __algorithm/ranges_for_each.h
-  __algorithm/ranges_for_each_n.h
-  __algorithm/ranges_generate.h
-  __algorithm/ranges_generate_n.h
-  __algorithm/ranges_includes.h
-  __algorithm/ranges_inplace_merge.h
-  __algorithm/ranges_is_heap.h
-  __algorithm/ranges_is_heap_until.h
-  __algorithm/ranges_is_partitioned.h
-  __algorithm/ranges_is_permutation.h
-  __algorithm/ranges_is_sorted.h
-  __algorithm/ranges_is_sorted_until.h
-  __algorithm/ranges_iterator_concept.h
-  __algorithm/ranges_lexicographical_compare.h
-  __algorithm/ranges_lower_bound.h
-  __algorithm/ranges_make_heap.h
-  __algorithm/ranges_max.h
-  __algorithm/ranges_max_element.h
-  __algorithm/ranges_merge.h
-  __algorithm/ranges_min.h
-  __algorithm/ranges_min_element.h
-  __algorithm/ranges_minmax.h
-  __algorithm/ranges_minmax_element.h
-  __algorithm/ranges_mismatch.h
-  __algorithm/ranges_move.h
-  __algorithm/ranges_move_backward.h
-  __algorithm/ranges_next_permutation.h
-  __algorithm/ranges_none_of.h
-  __algorithm/ranges_nth_element.h
-  __algorithm/ranges_partial_sort.h
-  __algorithm/ranges_partial_sort_copy.h
-  __algorithm/ranges_partition.h
-  __algorithm/ranges_partition_copy.h
-  __algorithm/ranges_partition_point.h
-  __algorithm/ranges_pop_heap.h
-  __algorithm/ranges_prev_permutation.h
-  __algorithm/ranges_push_heap.h
-  __algorithm/ranges_remove.h
-  __algorithm/ranges_remove_copy.h
-  __algorithm/ranges_remove_copy_if.h
-  __algorithm/ranges_remove_if.h
-  __algorithm/ranges_replace.h
-  __algorithm/ranges_replace_copy.h
-  __algorithm/ranges_replace_copy_if.h
-  __algorithm/ranges_replace_if.h
-  __algorithm/ranges_reverse.h
-  __algorithm/ranges_reverse_copy.h
-  __algorithm/ranges_rotate.h
-  __algorithm/ranges_rotate_copy.h
-  __algorithm/ranges_sample.h
-  __algorithm/ranges_search.h
-  __algorithm/ranges_search_n.h
-  __algorithm/ranges_set_
diff erence.h
-  __algorithm/ranges_set_intersection.h
-  __algorithm/ranges_set_symmetric_
diff erence.h
-  __algorithm/ranges_set_union.h
-  __algorithm/ranges_shuffle.h
-  __algorithm/ranges_sort.h
-  __algorithm/ranges_sort_heap.h
-  __algorithm/ranges_stable_partition.h
-  __algorithm/ranges_stable_sort.h
-  __algorithm/ranges_starts_with.h
-  __algorithm/ranges_swap_ranges.h
-  __algorithm/ranges_transform.h
-  __algorithm/ranges_unique.h
-  __algorithm/ranges_unique_copy.h
-  __algorithm/ranges_upper_bound.h
-  __algorithm/remove.h
-  __algorithm/remove_copy.h
-  __algorithm/remove_copy_if.h
-  __algorithm/remove_if.h
-  __algorithm/replace.h
-  __algorithm/replace_copy.h
-  __algorithm/replace_copy_if.h
-  __algorithm/replace_if.h
-  __algorithm/reverse.h
-  __algorithm/reverse_copy.h
-  __algorithm/rotate.h
-  __algorithm/rotate_copy.h
-  __algorithm/sample.h
-  __algorithm/search.h
-  __algorithm/search_n.h
-  __algorithm/set_
diff erence.h
-  __algorithm/set_intersection.h
-  __algorithm/set_symmetric_
diff erence.h
-  __algorithm/set_union.h
-  __algorithm/shift_left.h
-  __algorithm/shift_right.h
-  __algorithm/shuffle.h
-  __algorithm/sift_down.h
-  __algorithm/simd_utils.h
-  __algorithm/sort.h
-  __algorithm/sort_heap.h
-  __algorithm/stable_partition.h
-  __algorithm/stable_sort.h
-  __algorithm/swap_ranges.h
-  __algorithm/three_way_comp_ref_type.h
-  __algorithm/transform.h
-  __algorithm/uniform_random_bit_generator_adaptor.h
-  __algorithm/unique.h
-  __algorithm/unique_copy.h
-  __algorithm/unwrap_iter.h
-  __algorithm/unwrap_range.h
-  __algorithm/upper_bound.h
-  __assert
-  __atomic/aliases.h
-  __atomic/atomic.h
-  __atomic/atomic_base.h
-  __atomic/atomic_flag.h
-  __atomic/atomic_init.h
-  __atomic/atomic_lock_free.h
-  __atomic/atomic_ref.h
-  __atomic/atomic_sync.h
-  __atomic/check_memory_order.h
-  __atomic/contention_t.h
-  __atomic/cxx_atomic_impl.h
-  __atomic/fence.h
-  __atomic/is_always_lock_free.h
-  __atomic/kill_dependency.h
-  __atomic/memory_order.h
-  __atomic/to_gcc_order.h
-  __bit/bit_cast.h
-  __bit/bit_ceil.h
-  __bit/bit_floor.h
-  __bit/bit_log2.h
-  __bit/bit_width.h
-  __bit/blsr.h
-  __bit/byteswap.h
-  __bit/countl.h
-  __bit/countr.h
-  __bit/endian.h
-  __bit/has_single_bit.h
-  __bit/invert_if.h
-  __bit/popcount.h
-  __bit/rotate.h
-  __bit_reference
-  __charconv/chars_format.h
-  __charconv/from_chars_integral.h
-  __charconv/from_chars_result.h
-  __charconv/tables.h
-  __charconv/to_chars.h
-  __charconv/to_chars_base_10.h
-  __charconv/to_chars_floating_point.h
-  __charconv/to_chars_integral.h
-  __charconv/to_chars_result.h
-  __charconv/traits.h
-  __chrono/calendar.h
-  __chrono/concepts.h
-  __chrono/convert_to_timespec.h
-  __chrono/convert_to_tm.h
-  __chrono/day.h
-  __chrono/duration.h
-  __chrono/exception.h
-  __chrono/file_clock.h
-  __chrono/formatter.h
-  __chrono/hh_mm_ss.h
-  __chrono/high_resolution_clock.h
-  __chrono/leap_second.h
-  __chrono/literals.h
-  __chrono/local_info.h
-  __chrono/month.h
-  __chrono/month_weekday.h
-  __chrono/monthday.h
-  __chrono/ostream.h
-  __chrono/parser_std_format_spec.h
-  __chrono/statically_widen.h
-  __chrono/steady_clock.h
-  __chrono/sys_info.h
-  __chrono/system_clock.h
-  __chrono/time_point.h
-  __chrono/time_zone.h
-  __chrono/time_zone_link.h
-  __chrono/tzdb.h
-  __chrono/tzdb_list.h
-  __chrono/weekday.h
-  __chrono/year.h
-  __chrono/year_month.h
-  __chrono/year_month_day.h
-  __chrono/year_month_weekday.h
-  __chrono/zoned_time.h
-  __compare/common_comparison_category.h
-  __compare/compare_partial_order_fallback.h
-  __compare/compare_strong_order_fallback.h
-  __compare/compare_three_way.h
-  __compare/compare_three_way_result.h
-  __compare/compare_weak_order_fallback.h
-  __compare/is_eq.h
-  __compare/ordering.h
-  __compare/partial_order.h
-  __compare/strong_order.h
-  __compare/synth_three_way.h
-  __compare/three_way_comparable.h
-  __compare/weak_order.h
-  __concepts/arithmetic.h
-  __concepts/assignable.h
-  __concepts/boolean_testable.h
-  __concepts/class_or_enum.h
-  __concepts/common_reference_with.h
-  __concepts/common_with.h
-  __concepts/constructible.h
-  __concepts/convertible_to.h
-  __concepts/copyable.h
-  __concepts/derived_from.h
-  __concepts/destructible.h
-  __concepts/
diff erent_from.h
-  __concepts/equality_comparable.h
-  __concepts/invocable.h
-  __concepts/movable.h
-  __concepts/predicate.h
-  __concepts/regular.h
-  __concepts/relation.h
-  __concepts/same_as.h
-  __concepts/semiregular.h
-  __concepts/swappable.h
-  __concepts/totally_ordered.h
-  __condition_variable/condition_variable.h
-  __config
-  __configuration/abi.h
-  __configuration/availability.h
-  __configuration/compiler.h
-  __configuration/language.h
-  __configuration/platform.h
-  __coroutine/coroutine_handle.h
-  __coroutine/coroutine_traits.h
-  __coroutine/noop_coroutine_handle.h
-  __coroutine/trivial_awaitables.h
-  __debug_utils/randomize_range.h
-  __debug_utils/sanitizers.h
-  __debug_utils/strict_weak_ordering_check.h
-  __exception/exception.h
-  __exception/exception_ptr.h
-  __exception/nested_exception.h
-  __exception/operations.h
-  __exception/terminate.h
-  __expected/bad_expected_access.h
-  __expected/expected.h
-  __expected/unexpect.h
-  __expected/unexpected.h
-  __filesystem/copy_options.h
-  __filesystem/directory_entry.h
-  __filesystem/directory_iterator.h
-  __filesystem/directory_options.h
-  __filesystem/file_status.h
-  __filesystem/file_time_type.h
-  __filesystem/file_type.h
-  __filesystem/filesystem_error.h
-  __filesystem/operations.h
-  __filesystem/path.h
-  __filesystem/path_iterator.h
-  __filesystem/perm_options.h
-  __filesystem/perms.h
-  __filesystem/recursive_directory_iterator.h
-  __filesystem/space_info.h
-  __filesystem/u8path.h
-  __format/buffer.h
-  __format/concepts.h
-  __format/container_adaptor.h
-  __format/enable_insertable.h
-  __format/escaped_output_table.h
-  __format/extended_grapheme_cluster_table.h
-  __format/format_arg.h
-  __format/format_arg_store.h
-  __format/format_args.h
-  __format/format_context.h
-  __format/format_error.h
-  __format/format_functions.h
-  __format/format_parse_context.h
-  __format/format_string.h
-  __format/format_to_n_result.h
-  __format/formatter.h
-  __format/formatter_bool.h
-  __format/formatter_char.h
-  __format/formatter_floating_point.h
-  __format/formatter_integer.h
-  __format/formatter_integral.h
-  __format/formatter_output.h
-  __format/formatter_pointer.h
-  __format/formatter_string.h
-  __format/formatter_tuple.h
-  __format/indic_conjunct_break_table.h
-  __format/parser_std_format_spec.h
-  __format/range_default_formatter.h
-  __format/range_formatter.h
-  __format/unicode.h
-  __format/width_estimation_table.h
-  __format/write_escaped.h
-  __functional/binary_function.h
-  __functional/binary_negate.h
-  __functional/bind.h
-  __functional/bind_back.h
-  __functional/bind_front.h
-  __functional/binder1st.h
-  __functional/binder2nd.h
-  __functional/boyer_moore_searcher.h
-  __functional/compose.h
-  __functional/default_searcher.h
-  __functional/function.h
-  __functional/hash.h
-  __functional/identity.h
-  __functional/invoke.h
-  __functional/is_transparent.h
-  __functional/mem_fn.h
-  __functional/mem_fun_ref.h
-  __functional/not_fn.h
-  __functional/operations.h
-  __functional/perfect_forward.h
-  __functional/pointer_to_binary_function.h
-  __functional/pointer_to_unary_function.h
-  __functional/ranges_operations.h
-  __functional/reference_wrapper.h
-  __functional/unary_function.h
-  __functional/unary_negate.h
-  __functional/weak_result_type.h
-  __fwd/array.h
-  __fwd/bit_reference.h
-  __fwd/complex.h
-  __fwd/deque.h
-  __fwd/format.h
-  __fwd/fstream.h
-  __fwd/functional.h
-  __fwd/ios.h
-  __fwd/istream.h
-  __fwd/mdspan.h
-  __fwd/memory.h
-  __fwd/memory_resource.h
-  __fwd/ostream.h
-  __fwd/pair.h
-  __fwd/queue.h
-  __fwd/span.h
-  __fwd/sstream.h
-  __fwd/stack.h
-  __fwd/streambuf.h
-  __fwd/string.h
-  __fwd/string_view.h
-  __fwd/subrange.h
-  __fwd/tuple.h
-  __fwd/vector.h
-  __hash_table
-  __ios/fpos.h
-  __iterator/access.h
-  __iterator/advance.h
-  __iterator/aliasing_iterator.h
-  __iterator/back_insert_iterator.h
-  __iterator/bounded_iter.h
-  __iterator/common_iterator.h
-  __iterator/concepts.h
-  __iterator/counted_iterator.h
-  __iterator/cpp17_iterator_concepts.h
-  __iterator/data.h
-  __iterator/default_sentinel.h
-  __iterator/distance.h
-  __iterator/empty.h
-  __iterator/erase_if_container.h
-  __iterator/front_insert_iterator.h
-  __iterator/incrementable_traits.h
-  __iterator/indirectly_comparable.h
-  __iterator/insert_iterator.h
-  __iterator/istream_iterator.h
-  __iterator/istreambuf_iterator.h
-  __iterator/iter_move.h
-  __iterator/iter_swap.h
-  __iterator/iterator.h
-  __iterator/iterator_traits.h
-  __iterator/iterator_with_data.h
-  __iterator/mergeable.h
-  __iterator/move_iterator.h
-  __iterator/move_sentinel.h
-  __iterator/next.h
-  __iterator/ostream_iterator.h
-  __iterator/ostreambuf_iterator.h
-  __iterator/permutable.h
-  __iterator/prev.h
-  __iterator/projected.h
-  __iterator/ranges_iterator_traits.h
-  __iterator/readable_traits.h
-  __iterator/reverse_access.h
-  __iterator/reverse_iterator.h
-  __iterator/segmented_iterator.h
-  __iterator/size.h
-  __iterator/sortable.h
-  __iterator/unreachable_sentinel.h
-  __iterator/wrap_iter.h
-  __locale
-  __locale_dir/locale_base_api.h
-  __locale_dir/locale_base_api/android.h
-  __locale_dir/locale_base_api/bsd_locale_defaults.h
-  __locale_dir/locale_base_api/bsd_locale_fallbacks.h
-  __locale_dir/locale_base_api/fuchsia.h
-  __locale_dir/locale_base_api/ibm.h
-  __locale_dir/locale_base_api/locale_guard.h
-  __locale_dir/locale_base_api/musl.h
-  __locale_dir/locale_base_api/newlib.h
-  __locale_dir/locale_base_api/openbsd.h
-  __locale_dir/locale_base_api/win32.h
-  __math/abs.h
-  __math/copysign.h
-  __math/error_functions.h
-  __math/exponential_functions.h
-  __math/fdim.h
-  __math/fma.h
-  __math/gamma.h
-  __math/hyperbolic_functions.h
-  __math/hypot.h
-  __math/inverse_hyperbolic_functions.h
-  __math/inverse_trigonometric_functions.h
-  __math/logarithms.h
-  __math/min_max.h
-  __math/modulo.h
-  __math/remainder.h
-  __math/roots.h
-  __math/rounding_functions.h
-  __math/special_functions.h
-  __math/traits.h
-  __math/trigonometric_functions.h
-  __mbstate_t.h
-  __mdspan/default_accessor.h
-  __mdspan/extents.h
-  __mdspan/layout_left.h
-  __mdspan/layout_right.h
-  __mdspan/layout_stride.h
-  __mdspan/mdspan.h
-  __memory/addressof.h
-  __memory/align.h
-  __memory/aligned_alloc.h
-  __memory/allocate_at_least.h
-  __memory/allocation_guard.h
-  __memory/allocator.h
-  __memory/allocator_arg_t.h
-  __memory/allocator_destructor.h
-  __memory/allocator_traits.h
-  __memory/assume_aligned.h
-  __memory/auto_ptr.h
-  __memory/builtin_new_allocator.h
-  __memory/compressed_pair.h
-  __memory/concepts.h
-  __memory/construct_at.h
-  __memory/destruct_n.h
-  __memory/inout_ptr.h
-  __memory/out_ptr.h
-  __memory/pointer_traits.h
-  __memory/ranges_construct_at.h
-  __memory/ranges_uninitialized_algorithms.h
-  __memory/raw_storage_iterator.h
-  __memory/shared_ptr.h
-  __memory/swap_allocator.h
-  __memory/temp_value.h
-  __memory/temporary_buffer.h
-  __memory/uninitialized_algorithms.h
-  __memory/unique_ptr.h
-  __memory/uses_allocator.h
-  __memory/uses_allocator_construction.h
-  __memory/voidify.h
-  __memory_resource/memory_resource.h
-  __memory_resource/monotonic_buffer_resource.h
-  __memory_resource/polymorphic_allocator.h
-  __memory_resource/pool_options.h
-  __memory_resource/synchronized_pool_resource.h
-  __memory_resource/unsynchronized_pool_resource.h
-  __mutex/lock_guard.h
-  __mutex/mutex.h
-  __mutex/once_flag.h
-  __mutex/tag_types.h
-  __mutex/unique_lock.h
-  __node_handle
-  __numeric/accumulate.h
-  __numeric/adjacent_
diff erence.h
-  __numeric/exclusive_scan.h
-  __numeric/gcd_lcm.h
-  __numeric/inclusive_scan.h
-  __numeric/inner_product.h
-  __numeric/iota.h
-  __numeric/midpoint.h
-  __numeric/partial_sum.h
-  __numeric/pstl.h
-  __numeric/reduce.h
-  __numeric/saturation_arithmetic.h
-  __numeric/transform_exclusive_scan.h
-  __numeric/transform_inclusive_scan.h
-  __numeric/transform_reduce.h
-  __ostream/basic_ostream.h
-  __ostream/print.h
-  __pstl/backend.h
-  __pstl/backend_fwd.h
-  __pstl/backends/default.h
-  __pstl/backends/libdispatch.h
-  __pstl/backends/serial.h
-  __pstl/backends/std_thread.h
-  __pstl/cpu_algos/any_of.h
-  __pstl/cpu_algos/cpu_traits.h
-  __pstl/cpu_algos/fill.h
-  __pstl/cpu_algos/find_if.h
-  __pstl/cpu_algos/for_each.h
-  __pstl/cpu_algos/merge.h
-  __pstl/cpu_algos/stable_sort.h
-  __pstl/cpu_algos/transform.h
-  __pstl/cpu_algos/transform_reduce.h
-  __pstl/dispatch.h
-  __pstl/handle_exception.h
-  __random/bernoulli_distribution.h
-  __random/binomial_distribution.h
-  __random/cauchy_distribution.h
-  __random/chi_squared_distribution.h
-  __random/clamp_to_integral.h
-  __random/default_random_engine.h
-  __random/discard_block_engine.h
-  __random/discrete_distribution.h
-  __random/exponential_distribution.h
-  __random/extreme_value_distribution.h
-  __random/fisher_f_distribution.h
-  __random/gamma_distribution.h
-  __random/generate_canonical.h
-  __random/geometric_distribution.h
-  __random/independent_bits_engine.h
-  __random/is_seed_sequence.h
-  __random/is_valid.h
-  __random/knuth_b.h
-  __random/linear_congruential_engine.h
-  __random/log2.h
-  __random/lognormal_distribution.h
-  __random/mersenne_twister_engine.h
-  __random/negative_binomial_distribution.h
-  __random/normal_distribution.h
-  __random/piecewise_constant_distribution.h
-  __random/piecewise_linear_distribution.h
-  __random/poisson_distribution.h
-  __random/random_device.h
-  __random/ranlux.h
-  __random/seed_seq.h
-  __random/shuffle_order_engine.h
-  __random/student_t_distribution.h
-  __random/subtract_with_carry_engine.h
-  __random/uniform_int_distribution.h
-  __random/uniform_random_bit_generator.h
-  __random/uniform_real_distribution.h
-  __random/weibull_distribution.h
-  __ranges/access.h
-  __ranges/all.h
-  __ranges/as_rvalue_view.h
-  __ranges/chunk_by_view.h
-  __ranges/common_view.h
-  __ranges/concepts.h
-  __ranges/container_compatible_range.h
-  __ranges/counted.h
-  __ranges/dangling.h
-  __ranges/data.h
-  __ranges/drop_view.h
-  __ranges/drop_while_view.h
-  __ranges/elements_view.h
-  __ranges/empty.h
-  __ranges/empty_view.h
-  __ranges/enable_borrowed_range.h
-  __ranges/enable_view.h
-  __ranges/filter_view.h
-  __ranges/from_range.h
-  __ranges/iota_view.h
-  __ranges/istream_view.h
-  __ranges/join_view.h
-  __ranges/lazy_split_view.h
-  __ranges/movable_box.h
-  __ranges/non_propagating_cache.h
-  __ranges/owning_view.h
-  __ranges/range_adaptor.h
-  __ranges/rbegin.h
-  __ranges/ref_view.h
-  __ranges/rend.h
-  __ranges/repeat_view.h
-  __ranges/reverse_view.h
-  __ranges/single_view.h
-  __ranges/size.h
-  __ranges/split_view.h
-  __ranges/subrange.h
-  __ranges/take_view.h
-  __ranges/take_while_view.h
-  __ranges/to.h
-  __ranges/transform_view.h
-  __ranges/view_interface.h
-  __ranges/views.h
-  __ranges/zip_view.h
-  __split_buffer
-  __std_clang_module
-  __std_mbstate_t.h
-  __stop_token/atomic_unique_lock.h
-  __stop_token/intrusive_list_view.h
-  __stop_token/intrusive_shared_ptr.h
-  __stop_token/stop_callback.h
-  __stop_token/stop_source.h
-  __stop_token/stop_state.h
-  __stop_token/stop_token.h
-  __string/char_traits.h
-  __string/constexpr_c_functions.h
-  __string/extern_template_lists.h
-  __support/ibm/gettod_zos.h
-  __support/ibm/locale_mgmt_zos.h
-  __support/ibm/nanosleep.h
-  __support/xlocale/__nop_locale_mgmt.h
-  __support/xlocale/__posix_l_fallback.h
-  __support/xlocale/__strtonum_fallback.h
-  __system_error/errc.h
-  __system_error/error_category.h
-  __system_error/error_code.h
-  __system_error/error_condition.h
-  __system_error/system_error.h
-  __thread/formatter.h
-  __thread/id.h
-  __thread/jthread.h
-  __thread/poll_with_backoff.h
-  __thread/support.h
-  __thread/support/c11.h
-  __thread/support/external.h
-  __thread/support/pthread.h
-  __thread/support/windows.h
-  __thread/this_thread.h
-  __thread/thread.h
-  __thread/timed_backoff_policy.h
-  __tree
-  __tuple/find_index.h
-  __tuple/ignore.h
-  __tuple/make_tuple_types.h
-  __tuple/sfinae_helpers.h
-  __tuple/tuple_element.h
-  __tuple/tuple_indices.h
-  __tuple/tuple_like.h
-  __tuple/tuple_like_ext.h
-  __tuple/tuple_like_no_subrange.h
-  __tuple/tuple_size.h
-  __tuple/tuple_types.h
-  __type_traits/add_const.h
-  __type_traits/add_cv.h
-  __type_traits/add_lvalue_reference.h
-  __type_traits/add_pointer.h
-  __type_traits/add_rvalue_reference.h
-  __type_traits/add_volatile.h
-  __type_traits/aligned_storage.h
-  __type_traits/aligned_union.h
-  __type_traits/alignment_of.h
-  __type_traits/can_extract_key.h
-  __type_traits/common_reference.h
-  __type_traits/common_type.h
-  __type_traits/conditional.h
-  __type_traits/conjunction.h
-  __type_traits/copy_cv.h
-  __type_traits/copy_cvref.h
-  __type_traits/datasizeof.h
-  __type_traits/decay.h
-  __type_traits/dependent_type.h
-  __type_traits/desugars_to.h
-  __type_traits/disjunction.h
-  __type_traits/enable_if.h
-  __type_traits/extent.h
-  __type_traits/has_unique_object_representation.h
-  __type_traits/has_virtual_destructor.h
-  __type_traits/integral_constant.h
-  __type_traits/invoke.h
-  __type_traits/is_abstract.h
-  __type_traits/is_aggregate.h
-  __type_traits/is_allocator.h
-  __type_traits/is_always_bitcastable.h
-  __type_traits/is_arithmetic.h
-  __type_traits/is_array.h
-  __type_traits/is_assignable.h
-  __type_traits/is_base_of.h
-  __type_traits/is_bounded_array.h
-  __type_traits/is_callable.h
-  __type_traits/is_char_like_type.h
-  __type_traits/is_class.h
-  __type_traits/is_compound.h
-  __type_traits/is_const.h
-  __type_traits/is_constant_evaluated.h
-  __type_traits/is_constructible.h
-  __type_traits/is_convertible.h
-  __type_traits/is_core_convertible.h
-  __type_traits/is_destructible.h
-  __type_traits/is_empty.h
-  __type_traits/is_enum.h
-  __type_traits/is_equality_comparable.h
-  __type_traits/is_execution_policy.h
-  __type_traits/is_final.h
-  __type_traits/is_floating_point.h
-  __type_traits/is_function.h
-  __type_traits/is_fundamental.h
-  __type_traits/is_implicitly_default_constructible.h
-  __type_traits/is_integral.h
-  __type_traits/is_literal_type.h
-  __type_traits/is_member_pointer.h
-  __type_traits/is_nothrow_assignable.h
-  __type_traits/is_nothrow_constructible.h
-  __type_traits/is_nothrow_convertible.h
-  __type_traits/is_nothrow_destructible.h
-  __type_traits/is_null_pointer.h
-  __type_traits/is_object.h
-  __type_traits/is_pod.h
-  __type_traits/is_pointer.h
-  __type_traits/is_polymorphic.h
-  __type_traits/is_primary_template.h
-  __type_traits/is_reference.h
-  __type_traits/is_reference_wrapper.h
-  __type_traits/is_referenceable.h
-  __type_traits/is_same.h
-  __type_traits/is_scalar.h
-  __type_traits/is_signed.h
-  __type_traits/is_signed_integer.h
-  __type_traits/is_specialization.h
-  __type_traits/is_standard_layout.h
-  __type_traits/is_swappable.h
-  __type_traits/is_trivial.h
-  __type_traits/is_trivially_assignable.h
-  __type_traits/is_trivially_constructible.h
-  __type_traits/is_trivially_copyable.h
-  __type_traits/is_trivially_destructible.h
-  __type_traits/is_trivially_lexicographically_comparable.h
-  __type_traits/is_trivially_relocatable.h
-  __type_traits/is_unbounded_array.h
-  __type_traits/is_union.h
-  __type_traits/is_unsigned.h
-  __type_traits/is_unsigned_integer.h
-  __type_traits/is_valid_expansion.h
-  __type_traits/is_void.h
-  __type_traits/is_volatile.h
-  __type_traits/lazy.h
-  __type_traits/make_32_64_or_128_bit.h
-  __type_traits/make_const_lvalue_ref.h
-  __type_traits/make_signed.h
-  __type_traits/make_unsigned.h
-  __type_traits/maybe_const.h
-  __type_traits/nat.h
-  __type_traits/negation.h
-  __type_traits/noexcept_move_assign_container.h
-  __type_traits/promote.h
-  __type_traits/rank.h
-  __type_traits/remove_all_extents.h
-  __type_traits/remove_const.h
-  __type_traits/remove_const_ref.h
-  __type_traits/remove_cv.h
-  __type_traits/remove_cvref.h
-  __type_traits/remove_extent.h
-  __type_traits/remove_pointer.h
-  __type_traits/remove_reference.h
-  __type_traits/remove_volatile.h
-  __type_traits/result_of.h
-  __type_traits/strip_signature.h
-  __type_traits/type_identity.h
-  __type_traits/type_list.h
-  __type_traits/underlying_type.h
-  __type_traits/unwrap_ref.h
-  __type_traits/void_t.h
-  __undef_macros
-  __utility/as_const.h
-  __utility/as_lvalue.h
-  __utility/auto_cast.h
-  __utility/cmp.h
-  __utility/convert_to_integral.h
-  __utility/declval.h
-  __utility/empty.h
-  __utility/exception_guard.h
-  __utility/exchange.h
-  __utility/forward.h
-  __utility/forward_like.h
-  __utility/in_place.h
-  __utility/integer_sequence.h
-  __utility/is_pointer_in_range.h
-  __utility/is_valid_range.h
-  __utility/move.h
-  __utility/no_destroy.h
-  __utility/pair.h
-  __utility/piecewise_construct.h
-  __utility/priority_tag.h
-  __utility/private_constructor_tag.h
-  __utility/rel_ops.h
-  __utility/small_buffer.h
-  __utility/swap.h
-  __utility/to_underlying.h
-  __utility/unreachable.h
-  __variant/monostate.h
-  __verbose_abort
-  algorithm
-  any
-  array
-  atomic
-  barrier
-  bit
-  bitset
-  cassert
-  ccomplex
-  cctype
-  cerrno
-  cfenv
-  cfloat
-  charconv
-  chrono
-  cinttypes
-  ciso646
-  climits
-  clocale
-  cmath
-  codecvt
-  compare
-  complex
-  complex.h
-  concepts
-  condition_variable
-  coroutine
-  csetjmp
-  csignal
-  cstdarg
-  cstdbool
-  cstddef
-  cstdint
-  cstdio
-  cstdlib
-  cstring
-  ctgmath
-  ctime
-  ctype.h
-  cuchar
-  cwchar
-  cwctype
-  deque
-  errno.h
-  exception
-  execution
-  expected
-  experimental/__config
-  experimental/__simd/aligned_tag.h
-  experimental/__simd/declaration.h
-  experimental/__simd/reference.h
-  experimental/__simd/scalar.h
-  experimental/__simd/simd.h
-  experimental/__simd/simd_mask.h
-  experimental/__simd/traits.h
-  experimental/__simd/utility.h
-  experimental/__simd/vec_ext.h
-  experimental/iterator
-  experimental/memory
-  experimental/propagate_const
-  experimental/simd
-  experimental/type_traits
-  experimental/utility
-  ext/__hash
-  ext/hash_map
-  ext/hash_set
-  fenv.h
-  filesystem
-  float.h
-  format
-  forward_list
-  fstream
-  functional
-  future
-  initializer_list
-  inttypes.h
-  iomanip
-  ios
-  iosfwd
-  iostream
-  istream
-  iterator
-  latch
-  limits
-  list
-  locale
-  locale.h
-  map
-  math.h
-  mdspan
-  memory
-  memory_resource
-  module.modulemap
-  mutex
-  new
-  numbers
-  numeric
-  optional
-  ostream
-  print
-  queue
-  random
-  ranges
-  ratio
-  regex
-  scoped_allocator
-  semaphore
-  set
-  shared_mutex
-  source_location
-  span
-  sstream
-  stack
-  stdatomic.h
-  stdbool.h
-  stddef.h
-  stdexcept
-  stdint.h
-  stdio.h
-  stdlib.h
-  stop_token
-  streambuf
-  string
-  string.h
-  string_view
-  strstream
-  syncstream
-  system_error
-  tgmath.h
-  thread
-  tuple
-  type_traits
-  typeindex
-  typeinfo
-  uchar.h
-  unordered_map
-  unordered_set
-  utility
-  valarray
-  variant
-  vector
-  version
-  wchar.h
-  wctype.h
-  )
-
-configure_file("__config_site.in" "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site" @ONLY)
-configure_file("${LIBCXX_ASSERTION_HANDLER_FILE}" "${LIBCXX_GENERATED_INCLUDE_DIR}/__assertion_handler" COPYONLY)
-
-set(_all_includes "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site"
-                  "${LIBCXX_GENERATED_INCLUDE_DIR}/__assertion_handler")
-foreach(f ${files})
-  set(src "${CMAKE_CURRENT_SOURCE_DIR}/${f}")
-  set(dst "${LIBCXX_GENERATED_INCLUDE_DIR}/${f}")
-  add_custom_command(OUTPUT ${dst}
-    DEPENDS ${src}
-    COMMAND ${CMAKE_COMMAND} -E copy_if_
diff erent ${src} ${dst}
-    COMMENT "Copying CXX header ${f}")
-  list(APPEND _all_includes "${dst}")
-endforeach()
-
-# Generate the IWYU mapping. This depends on all header files but it's also considered as an
-# "include" for dependency tracking.
-add_custom_command(OUTPUT "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp"
-  COMMAND "${Python3_EXECUTABLE}" "${LIBCXX_SOURCE_DIR}/utils/generate_iwyu_mapping.py" "-o" "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp"
-  DEPENDS "${LIBCXX_SOURCE_DIR}/utils/libcxx/header_information.py"
-  COMMENT "Generate the mapping file for include-what-you-use"
-)
-list(APPEND _all_includes "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp")
-
-add_custom_target(generate-cxx-headers ALL DEPENDS ${_all_includes})
-
-add_library(cxx-headers INTERFACE)
-target_link_libraries(cxx-headers INTERFACE libcxx-libc-headers libcxx-abi-headers)
-add_dependencies(cxx-headers generate-cxx-headers)
-# It's important that the arch directory be included first so that its header files
-# which interpose on the default include dir be included instead of the default ones.
-target_include_directories(cxx-headers INTERFACE ${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}
-                                                 ${LIBCXX_GENERATED_INCLUDE_DIR})
-
-if (LIBCXX_INSTALL_HEADERS)
-  foreach(file ${files})
-    get_filename_component(dir ${file} DIRECTORY)
-    install(FILES ${file}
-      DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}/${dir}"
-      COMPONENT cxx-headers
-      PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
-    )
-  endforeach()
-
-  # Install the generated __config_site file to the per-target include dir.
-  install(FILES "${LIBCXX_GENERATED_INCLUDE_TARGET_DIR}/__config_site"
-    DESTINATION "${LIBCXX_INSTALL_INCLUDE_TARGET_DIR}"
-    PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
-    COMPONENT cxx-headers)
-
-  # Install the generated __assertion_handler file to the generic include dir.
-  install(FILES "${LIBCXX_GENERATED_INCLUDE_DIR}/__assertion_handler"
-    DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}"
-    PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
-    COMPONENT cxx-headers)
-
-  # Install the generated IWYU file to the generic include dir.
-  install(FILES "${LIBCXX_GENERATED_INCLUDE_DIR}/libcxx.imp"
-    DESTINATION "${LIBCXX_INSTALL_INCLUDE_DIR}"
-    PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ
-    COMPONENT cxx-headers)
-
-  if (NOT CMAKE_CONFIGURATION_TYPES)
-    add_custom_target(install-cxx-headers
-                      DEPENDS cxx-headers
-                      COMMAND "${CMAKE_COMMAND}"
-                              -DCMAKE_INSTALL_COMPONENT=cxx-headers
-                              -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
-    # Stripping is a no-op for headers
-    add_custom_target(install-cxx-headers-stripped DEPENDS install-cxx-headers)
-  endif()
-endif()

diff  --git a/libcxx/include/__cxx03/__config b/libcxx/include/__cxx03/__config
index 935fa4cc404f4e..3e8f181664c975 100644
--- a/libcxx/include/__cxx03/__config
+++ b/libcxx/include/__cxx03/__config
@@ -10,10 +10,10 @@
 #ifndef _LIBCPP___CXX03___CONFIG
 #define _LIBCPP___CXX03___CONFIG
 
-#include <__config_site>
 #include <__cxx03/__configuration/abi.h>
 #include <__cxx03/__configuration/availability.h>
 #include <__cxx03/__configuration/compiler.h>
+#include <__cxx03/__configuration/config_site_shim.h>
 #include <__cxx03/__configuration/platform.h>
 
 #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER

diff  --git a/libcxx/include/__cxx03/__configuration/abi.h b/libcxx/include/__cxx03/__configuration/abi.h
index 9e7f7313c8834f..740aec39a3487a 100644
--- a/libcxx/include/__cxx03/__configuration/abi.h
+++ b/libcxx/include/__cxx03/__configuration/abi.h
@@ -10,8 +10,8 @@
 #ifndef _LIBCPP___CXX03___CONFIGURATION_ABI_H
 #define _LIBCPP___CXX03___CONFIGURATION_ABI_H
 
-#include <__config_site>
 #include <__cxx03/__configuration/compiler.h>
+#include <__cxx03/__configuration/config_site_shim.h>
 #include <__cxx03/__configuration/platform.h>
 
 #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER

diff  --git a/libcxx/include/__cxx03/__configuration/compiler.h b/libcxx/include/__cxx03/__configuration/compiler.h
index 2f33fb1f6ef4d4..4d53a2144a5012 100644
--- a/libcxx/include/__cxx03/__configuration/compiler.h
+++ b/libcxx/include/__cxx03/__configuration/compiler.h
@@ -10,7 +10,7 @@
 #ifndef _LIBCPP___CXX03___CONFIGURATION_COMPILER_H
 #define _LIBCPP___CXX03___CONFIGURATION_COMPILER_H
 
-#include <__config_site>
+#include <__cxx03/__configuration/config_site_shim.h>
 
 #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
 #  pragma GCC system_header

diff  --git a/libcxx/include/__cxx03/__configuration/config_site_shim.h b/libcxx/include/__cxx03/__configuration/config_site_shim.h
new file mode 100644
index 00000000000000..974a17af495cd3
--- /dev/null
+++ b/libcxx/include/__cxx03/__configuration/config_site_shim.h
@@ -0,0 +1,80 @@
+//===----------------------------------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef _LIBCPP___CXX03___CONFIGURATION_CONFIG_SITE_SHIM_H
+#define _LIBCPP___CXX03___CONFIGURATION_CONFIG_SITE_SHIM_H
+
+#include <__config_site>
+
+#if !_LIBCPP_ABI_FORCE_ITANIUM
+#  undef _LIBCPP_ABI_FORCE_ITANIUM
+#endif
+
+#if !_LIBCPP_ABI_FORCE_MICROSOFT
+#  undef _LIBCPP_ABI_FORCE_MICROSOFT
+#endif
+
+#if !_LIBCPP_HAS_THREADS
+#  define _LIBCPP_HAS_NO_THREADS
+#endif
+
+#if !_LIBCPP_HAS_MONOTONIC_CLOCK
+#  define _LIBCPP_HAS_NO_MONOTONIC_CLOCK
+#endif
+
+#if !_LIBCPP_HAS_MUSL_LIBC
+#  undef _LIBCPP_HAS_MUSL_LIBC
+#endif
+
+#if !_LIBCPP_HAS_THREAD_API_PTHREAD
+#  undef _LIBCPP_HAS_THREAD_API_PTHREAD
+#endif
+
+#if !_LIBCPP_HAS_THREAD_API_EXTERNAL
+#  undef _LIBCPP_HAS_THREAD_API_EXTERNAL
+#endif
+
+#if !_LIBCPP_HAS_THREAD_API_WIN32
+#  undef _LIBCPP_HAS_THREAD_API_WIN32
+#endif
+
+#undef _LIBCPP_HAS_THREAD_API_C11
+
+#if !_LIBCPP_HAS_VENDOR_AVAILABILITY_ANNOTATIONS
+#  define _LIBCPP_HAS_NO_VENDOR_AVAILABILITY_ANNOTATIONS
+#endif
+
+#if !_LIBCPP_HAS_FILESYSTEM
+#  define _LIBCPP_HAS_NO_FILESYSTEM
+#endif
+
+#if !_LIBCPP_HAS_RANDOM_DEVICE
+#  define _LIBCPP_HAS_NO_RANDOM_DEVICE
+#endif
+
+#if !_LIBCPP_HAS_LOCALIZATION
+#  define _LIBCPP_HAS_NO_LOCALIZATION
+#endif
+
+#if !_LIBCPP_HAS_UNICODE
+#  define _LIBCPP_HAS_NO_UNICODE
+#endif
+
+#if !_LIBCPP_HAS_WIDE_CHARACTERS
+#  define _LIBCPP_HAS_NO_WIDE_CHARACTERS
+#endif
+
+#if !_LIBCPP_HAS_TIME_ZONE_DATABASE
+#  define _LIBCPP_HAS_NO_TIME_ZONE_DATABASE
+#endif
+
+#if !_LIBCPP_INSTRUMENTED_WITH_ASAN
+#  undef _LIBCPP_INSTRUMENTED_WITH_ASAN
+#endif
+
+#endif // _LIBCPP___CXX03___CONFIGURATION_CONFIG_SITE_SHIM_H

diff  --git a/libcxx/include/__cxx03/__configuration/language.h b/libcxx/include/__cxx03/__configuration/language.h
index 604f2d2cd532a8..8fd09f4b225540 100644
--- a/libcxx/include/__cxx03/__configuration/language.h
+++ b/libcxx/include/__cxx03/__configuration/language.h
@@ -10,7 +10,7 @@
 #ifndef _LIBCPP___CXX03___CONFIGURATION_LANGUAGE_H
 #define _LIBCPP___CXX03___CONFIGURATION_LANGUAGE_H
 
-#include <__config_site>
+#include <__cxx03/__configuration/config_site_shim.h>
 
 #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
 #  pragma GCC system_header

diff  --git a/libcxx/include/__cxx03/__configuration/platform.h b/libcxx/include/__cxx03/__configuration/platform.h
index b4718986ad10d8..24590503693aeb 100644
--- a/libcxx/include/__cxx03/__configuration/platform.h
+++ b/libcxx/include/__cxx03/__configuration/platform.h
@@ -10,7 +10,7 @@
 #ifndef _LIBCPP___CXX03___CONFIGURATION_PLATFORM_H
 #define _LIBCPP___CXX03___CONFIGURATION_PLATFORM_H
 
-#include <__config_site>
+#include <__cxx03/__configuration/config_site_shim.h>
 
 #ifndef _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER
 #  pragma GCC system_header

diff  --git a/libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h b/libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
index e61e950a42c77c..a73b724df6c198 100644
--- a/libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
+++ b/libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
@@ -15,8 +15,8 @@
 
 #include <__cxx03/__locale_dir/locale_base_api/locale_guard.h>
 #include <__cxx03/cstdio>
-#include <__cxx03/stdarg.h>
 #include <__cxx03/stdlib.h>
+#include <stdarg.h>
 
 #ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
 #  include <__cxx03/cwchar>

diff  --git a/libcxx/include/__cxx03/__thread/support/pthread.h b/libcxx/include/__cxx03/__thread/support/pthread.h
index a4d7c874e68306..4dc7a4980de2b5 100644
--- a/libcxx/include/__cxx03/__thread/support/pthread.h
+++ b/libcxx/include/__cxx03/__thread/support/pthread.h
@@ -15,8 +15,8 @@
 #include <__cxx03/__config>
 #include <__cxx03/ctime>
 #include <__cxx03/errno.h>
-#include <__cxx03/pthread.h>
-#include <__cxx03/sched.h>
+#include <pthread.h>
+#include <sched.h>
 
 #ifdef __MVS__
 #  include <__cxx03/__support/ibm/nanosleep.h>

diff  --git a/libcxx/include/__cxx03/climits b/libcxx/include/__cxx03/climits
index 37d8c41a0c6de7..2c6fe5ab95b4b2 100644
--- a/libcxx/include/__cxx03/climits
+++ b/libcxx/include/__cxx03/climits
@@ -39,7 +39,7 @@ Macros:
 
 #include <__cxx03/__config>
 
-#include <__cxx03/limits.h>
+#include <limits.h>
 
 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #  pragma GCC system_header

diff  --git a/libcxx/include/__cxx03/locale b/libcxx/include/__cxx03/locale
index 78c0fd7763af24..6360bbc2f6b608 100644
--- a/libcxx/include/__cxx03/locale
+++ b/libcxx/include/__cxx03/locale
@@ -222,7 +222,7 @@ template <class charT> class messages_byname;
 // Most unix variants have catopen.  These are the specific ones that don't.
 #    if !defined(__BIONIC__) && !defined(_NEWLIB_VERSION) && !defined(__EMSCRIPTEN__)
 #      define _LIBCPP_HAS_CATOPEN 1
-#      include <__cxx03/nl_types.h>
+#      include <nl_types.h>
 #    endif
 #  endif
 

diff  --git a/libcxx/include/__cxx03/module.modulemap b/libcxx/include/__cxx03/module.modulemap
index 13d0dce34d97e3..34a2d0f25fc450 100644
--- a/libcxx/include/__cxx03/module.modulemap
+++ b/libcxx/include/__cxx03/module.modulemap
@@ -1,462 +1,462 @@
 // Main C++ standard library interfaces
-module std_algorithm [system] {
+module cxx03_std_algorithm [system] {
   header "algorithm"
   export *
 }
-module std_any [system] {
+module cxx03_std_any [system] {
   header "any"
   export *
 }
-module std_array [system] {
+module cxx03_std_array [system] {
   header "array"
   export *
 }
-module std_atomic [system] {
+module cxx03_std_atomic [system] {
   header "atomic"
   export *
 }
-module std_barrier [system] {
+module cxx03_std_barrier [system] {
   header "barrier"
   export *
 }
-module std_bit [system] {
+module cxx03_std_bit [system] {
   header "bit"
   export *
 }
-module std_bitset [system] {
+module cxx03_std_bitset [system] {
   header "bitset"
   export *
 }
-module std_charconv [system] {
+module cxx03_std_charconv [system] {
   header "charconv"
   export *
 }
-module std_chrono [system] {
+module cxx03_std_chrono [system] {
   header "chrono"
   export *
 }
-module std_codecvt [system] {
+module cxx03_std_codecvt [system] {
   header "codecvt"
   export *
 }
-module std_compare [system] {
+module cxx03_std_compare [system] {
   header "compare"
   export *
 }
-module std_complex [system] {
+module cxx03_std_complex [system] {
   header "complex"
   export *
 }
-module std_concepts [system] {
+module cxx03_std_concepts [system] {
   header "concepts"
   export *
 }
-module std_condition_variable [system] {
+module cxx03_std_condition_variable [system] {
   header "condition_variable"
   export *
 }
-module std_coroutine [system] {
+module cxx03_std_coroutine [system] {
   header "coroutine"
   export *
 }
-module std_deque [system] {
+module cxx03_std_deque [system] {
   header "deque"
   export *
 }
-module std_exception [system] {
+module cxx03_std_exception [system] {
   header "exception"
   export *
 }
-module std_execution [system] {
+module cxx03_std_execution [system] {
   header "execution"
   export *
 }
-module std_expected [system] {
+module cxx03_std_expected [system] {
   header "expected"
   export *
 }
-module std_filesystem [system] {
+module cxx03_std_filesystem [system] {
   header "filesystem"
   export *
 }
-module std_format [system] {
+module cxx03_std_format [system] {
   header "format"
   export *
 }
-module std_forward_list [system] {
+module cxx03_std_forward_list [system] {
   header "forward_list"
   export *
 }
-module std_fstream [system] {
+module cxx03_std_fstream [system] {
   header "fstream"
   export *
 }
-module std_functional [system] {
+module cxx03_std_functional [system] {
   header "functional"
   export *
 }
-module std_future [system] {
+module cxx03_std_future [system] {
   header "future"
   export *
 }
-module std_initializer_list [system] {
+module cxx03_std_initializer_list [system] {
   header "initializer_list"
   export *
 }
-module std_iomanip [system] {
+module cxx03_std_iomanip [system] {
   header "iomanip"
   export *
 }
-module std_ios [system] {
+module cxx03_std_ios [system] {
   header "ios"
   export *
 }
-module std_iosfwd [system] {
+module cxx03_std_iosfwd [system] {
   header "iosfwd"
   export *
 }
-module std_iostream [system] {
+module cxx03_std_iostream [system] {
   header "iostream"
   export *
 }
-module std_istream [system] {
+module cxx03_std_istream [system] {
   header "istream"
   export *
 }
-module std_iterator [system] {
+module cxx03_std_iterator [system] {
   header "iterator"
   export *
 }
-module std_latch [system] {
+module cxx03_std_latch [system] {
   header "latch"
   export *
 }
-module std_limits [system] {
+module cxx03_std_limits [system] {
   header "limits"
   export *
 }
-module std_list [system] {
+module cxx03_std_list [system] {
   header "list"
   export *
 }
-module std_locale [system] {
+module cxx03_std_locale [system] {
   header "locale"
   export *
 }
-module std_map [system] {
+module cxx03_std_map [system] {
   header "map"
   export *
 }
-module std_mdspan [system] {
+module cxx03_std_mdspan [system] {
   header "mdspan"
   export *
 }
-module std_memory [system] {
+module cxx03_std_memory [system] {
   header "memory"
   export *
 }
-module std_memory_resource [system] {
+module cxx03_std_memory_resource [system] {
   header "memory_resource"
   export *
 }
-module std_mutex [system] {
+module cxx03_std_mutex [system] {
   header "mutex"
   export *
 }
-module std_new [system] {
+module cxx03_std_new [system] {
   header "new"
   export *
 }
-module std_numbers [system] {
+module cxx03_std_numbers [system] {
   header "numbers"
   export *
 }
-module std_numeric [system] {
+module cxx03_std_numeric [system] {
   header "numeric"
   export *
 }
-module std_optional [system] {
+module cxx03_std_optional [system] {
   header "optional"
   export *
 }
-module std_ostream [system] {
+module cxx03_std_ostream [system] {
   header "ostream"
   export *
 }
-module std_print [system] {
+module cxx03_std_print [system] {
   header "print"
   export *
 }
-module std_queue [system] {
+module cxx03_std_queue [system] {
   header "queue"
   export *
 }
-module std_random [system] {
+module cxx03_std_random [system] {
   header "random"
   export *
 }
-module std_ranges [system] {
+module cxx03_std_ranges [system] {
   header "ranges"
   export *
 }
-module std_ratio [system] {
+module cxx03_std_ratio [system] {
   header "ratio"
   export *
 }
-module std_regex [system] {
+module cxx03_std_regex [system] {
   header "regex"
   export *
 }
-module std_scoped_allocator [system] {
+module cxx03_std_scoped_allocator [system] {
   header "scoped_allocator"
   export *
 }
-module std_semaphore [system] {
+module cxx03_std_semaphore [system] {
   header "semaphore"
   export *
 }
-module std_set [system] {
+module cxx03_std_set [system] {
   header "set"
   export *
 }
-module std_shared_mutex [system] {
+module cxx03_std_shared_mutex [system] {
   header "shared_mutex"
   export std_version
 }
-module std_source_location [system] {
+module cxx03_std_source_location [system] {
   header "source_location"
   export *
 }
-module std_span [system] {
+module cxx03_std_span [system] {
   header "span"
   export std_private_ranges_enable_borrowed_range
   export std_version
   export std_private_span_span_fwd
 }
-module std_sstream [system] {
+module cxx03_std_sstream [system] {
   header "sstream"
   export *
 }
-module std_stack [system] {
+module cxx03_std_stack [system] {
   header "stack"
   export *
 }
-module std_stdexcept [system] {
+module cxx03_std_stdexcept [system] {
   header "stdexcept"
   export *
 }
-module std_stop_token {
+module cxx03_std_stop_token {
   header "stop_token"
   export *
 }
-module std_streambuf [system] {
+module cxx03_std_streambuf [system] {
   header "streambuf"
   export *
 }
-module std_string [system] {
+module cxx03_std_string [system] {
   header "string"
   export *
 }
-module std_string_view [system] {
+module cxx03_std_string_view [system] {
   header "string_view"
   export *
 }
-module std_strstream [system] {
+module cxx03_std_strstream [system] {
   header "strstream"
   export *
 }
-module std_syncstream [system] {
+module cxx03_std_syncstream [system] {
   header "syncstream"
   export *
 }
-module std_system_error [system] {
+module cxx03_std_system_error [system] {
   header "system_error"
   export *
 }
-module std_thread [system] {
+module cxx03_std_thread [system] {
   header "thread"
   export *
 }
-module std_tuple [system] {
+module cxx03_std_tuple [system] {
   header "tuple"
   export *
 }
-module std_type_traits [system] {
+module cxx03_std_type_traits [system] {
   header "type_traits"
   export *
 }
-module std_typeindex [system] {
+module cxx03_std_typeindex [system] {
   header "typeindex"
   export *
 }
-module std_typeinfo [system] {
+module cxx03_std_typeinfo [system] {
   header "typeinfo"
   export *
 }
-module std_unordered_map [system] {
+module cxx03_std_unordered_map [system] {
   header "unordered_map"
   export *
 }
-module std_unordered_set [system] {
+module cxx03_std_unordered_set [system] {
   header "unordered_set"
   export *
 }
-module std_utility [system] {
+module cxx03_std_utility [system] {
   header "utility"
   export *
 }
-module std_valarray [system] {
+module cxx03_std_valarray [system] {
   header "valarray"
   export *
 }
-module std_variant [system] {
+module cxx03_std_variant [system] {
   header "variant"
   export *
 }
-module std_vector [system] {
+module cxx03_std_vector [system] {
   header "vector"
   export *
 }
-module std_version [system] {
+module cxx03_std_version [system] {
   header "version"
   export *
 }
 
 // C standard library interface wrappers
-module std_cassert [system] {
+module cxx03_std_cassert [system] {
   // <cassert>'s use of NDEBUG requires textual inclusion.
   textual header "cassert"
 }
-module std_ccomplex [system] {
+module cxx03_std_ccomplex [system] {
   header "ccomplex"
   export *
 }
-module std_cctype [system] {
+module cxx03_std_cctype [system] {
   header "cctype"
   export *
 }
-module std_cerrno [system] {
+module cxx03_std_cerrno [system] {
   header "cerrno"
   export *
 }
-module std_cfenv [system] {
+module cxx03_std_cfenv [system] {
   header "cfenv"
   export *
 }
-module std_cfloat [system] {
+module cxx03_std_cfloat [system] {
   header "cfloat"
   export *
 }
-module std_cinttypes [system] {
+module cxx03_std_cinttypes [system] {
   header "cinttypes"
   export *
 }
-module std_ciso646 [system] {
+module cxx03_std_ciso646 [system] {
   header "ciso646"
   export *
 }
-module std_climits [system] {
+module cxx03_std_climits [system] {
   header "climits"
   export *
 }
-module std_clocale [system] {
+module cxx03_std_clocale [system] {
   header "clocale"
   export *
 }
-module std_cmath [system] {
+module cxx03_std_cmath [system] {
   header "cmath"
   export *
 }
-module std_csetjmp [system] {
+module cxx03_std_csetjmp [system] {
   header "csetjmp"
   export *
 }
-module std_csignal [system] {
+module cxx03_std_csignal [system] {
   header "csignal"
   export *
 }
 // FIXME: <cstdalign> is missing.
-module std_cstdarg [system] {
+module cxx03_std_cstdarg [system] {
   header "cstdarg"
   export *
 }
-module std_cstdbool [system] {
+module cxx03_std_cstdbool [system] {
   header "cstdbool"
   export *
 }
-module std_cstddef [system] {
+module cxx03_std_cstddef [system] {
   header "cstddef"
   export *
 }
-module std_cstdint [system] {
+module cxx03_std_cstdint [system] {
   header "cstdint"
   export *
 }
-module std_cstdio [system] {
+module cxx03_std_cstdio [system] {
   header "cstdio"
   export *
 }
-module std_cstdlib [system] {
+module cxx03_std_cstdlib [system] {
   header "cstdlib"
   export *
 }
-module std_cstring [system] {
+module cxx03_std_cstring [system] {
   header "cstring"
   export *
 }
-module std_ctgmath [system] {
+module cxx03_std_ctgmath [system] {
   header "ctgmath"
   export *
 }
-module std_ctime [system] {
+module cxx03_std_ctime [system] {
   header "ctime"
   export *
 }
-module std_cuchar [system] {
+module cxx03_std_cuchar [system] {
   header "cuchar"
   export *
 }
-module std_cwchar [system] {
+module cxx03_std_cwchar [system] {
   header "cwchar"
   export *
 }
-module std_cwctype [system] {
+module cxx03_std_cwctype [system] {
   header "cwctype"
   export *
 }
 
 // C standard library interfaces augmented/replaced in C++
 // <assert.h> provided by C library.
-module std_complex_h [system] {
+module cxx03_std_complex_h [system] {
   header "complex.h"
   export *
 }
-module std_ctype_h [system] {
+module cxx03_std_ctype_h [system] {
   header "ctype.h"
   export *
 }
-module std_errno_h [system] {
+module cxx03_std_errno_h [system] {
   header "errno.h"
   export *
 }
-module std_fenv_h [system] {
+module cxx03_std_fenv_h [system] {
   header "fenv.h"
   export *
 }
-module std_float_h [system] {
+module cxx03_std_float_h [system] {
   header "float.h"
   export *
 }
-module std_inttypes_h [system] {
+module cxx03_std_inttypes_h [system] {
   header "inttypes.h"
   export *
 }
 // <iso646.h> provided by compiler.
-module std_locale_h [system] {
+module cxx03_std_locale_h [system] {
   header "locale.h"
   export *
 }
-module std_math_h [system] {
+module cxx03_std_math_h [system] {
   header "math.h"
   export *
 }
@@ -464,59 +464,59 @@ module std_math_h [system] {
 // <signal.h> provided by C library.
 // FIXME: <stdalign.h> is missing.
 // <stdarg.h> provided by compiler.
-module std_stdatomic_h [system] {
+module cxx03_std_stdatomic_h [system] {
   header "stdatomic.h"
   export *
 }
-module std_stdbool_h [system] {
+module cxx03_std_stdbool_h [system] {
   // <stdbool.h>'s __bool_true_false_are_defined macro requires textual inclusion.
   textual header "stdbool.h"
   export *
 }
-module std_stddef_h [system] {
+module cxx03_std_stddef_h [system] {
   // <stddef.h>'s __need_* macros require textual inclusion.
   textual header "stddef.h"
   export *
 }
-module std_stdint_h [system] {
+module cxx03_std_stdint_h [system] {
   header "stdint.h"
   export *
 }
-module std_stdio_h [system] {
+module cxx03_std_stdio_h [system] {
   // <stdio.h>'s __need_* macros require textual inclusion.
   textual header "stdio.h"
   export *
 }
-module std_stdlib_h [system] {
+module cxx03_std_stdlib_h [system] {
   // <stdlib.h>'s __need_* macros require textual inclusion.
   textual header "stdlib.h"
   export *
 }
-module std_string_h [system] {
+module cxx03_std_string_h [system] {
   header "string.h"
   export *
 }
-module std_tgmath_h [system] {
+module cxx03_std_tgmath_h [system] {
   header "tgmath.h"
   export *
 }
-module std_uchar_h [system] {
+module cxx03_std_uchar_h [system] {
   header "uchar.h"
   export *
 }
 // <time.h> provided by C library.
-module std_wchar_h [system] {
+module cxx03_std_wchar_h [system] {
   // <wchar.h>'s __need_* macros require textual inclusion.
   textual header "wchar.h"
   export *
 }
-module std_wctype_h [system] {
+module cxx03_std_wctype_h [system] {
   header "wctype.h"
   export *
 }
 
 // Experimental C++ standard library interfaces
-module std_experimental [system] {
+module cxx03_std_experimental [system] {
   module iterator {
     header "experimental/iterator"
     export *
@@ -559,25 +559,25 @@ module std_experimental [system] {
 
 // Convenience method to get all of the above modules in a single import statement.
 // Importing only the needed modules is likely to be more performant.
-module std [system] {
+module cxx03_std [system] {
   header "__std_clang_module"
   export *
 }
 
 // Implementation detail headers that are private to libc++. These modules
 // must not be directly imported.
-module std_private_assert            [system] {
+module cxx03_std_private_assert            [system] {
   header "__assert"
   export *
 }
-module std_private_bit_reference     [system] {
+module cxx03_std_private_bit_reference     [system] {
   header "__bit_reference"
   export *
 }
-module std_private_fwd_bit_reference [system] {
+module cxx03_std_private_fwd_bit_reference [system] {
   header "__fwd/bit_reference.h"
 }
-module std_private_config            [system] {
+module cxx03_std_private_config            [system] {
   textual header "__config"
   textual header "__configuration/abi.h"
   textual header "__configuration/availability.h"
@@ -586,813 +586,813 @@ module std_private_config            [system] {
   textual header "__configuration/platform.h"
   export *
 }
-module std_private_hash_table        [system] {
+module cxx03_std_private_hash_table        [system] {
   header "__hash_table"
   export *
 }
-module std_private_locale            [system] {
+module cxx03_std_private_locale            [system] {
   header "__locale"
   export *
 }
-module std_private_mbstate_t         [system] {
+module cxx03_std_private_mbstate_t         [system] {
   header "__mbstate_t.h"
   export *
 }
-module std_private_node_handle       [system] {
+module cxx03_std_private_node_handle       [system] {
   header "__node_handle"
   export *
 }
-module std_private_split_buffer      [system] {
+module cxx03_std_private_split_buffer      [system] {
   header "__split_buffer"
   export *
 }
-module std_private_std_mbstate_t     [system] {
+module cxx03_std_private_std_mbstate_t     [system] {
   header "__std_mbstate_t.h"
   export *
 }
-module std_private_tree              [system] {
+module cxx03_std_private_tree              [system] {
   header "__tree"
   export *
 }
-module std_private_undef_macros      [system] {
+module cxx03_std_private_undef_macros      [system] {
   textual header "__undef_macros"
   export *
 }
-module std_private_verbose_abort     [system] {
+module cxx03_std_private_verbose_abort     [system] {
   header "__verbose_abort"
   export *
 }
 
-module std_private_algorithm_adjacent_find                               [system] { header "__algorithm/adjacent_find.h" }
-module std_private_algorithm_all_of                                      [system] { header "__algorithm/all_of.h" }
-module std_private_algorithm_any_of                                      [system] { header "__algorithm/any_of.h" }
-module std_private_algorithm_binary_search                               [system] { header "__algorithm/binary_search.h" }
-module std_private_algorithm_clamp                                       [system] { header "__algorithm/clamp.h" }
-module std_private_algorithm_comp                                        [system] { header "__algorithm/comp.h" }
-module std_private_algorithm_comp_ref_type                               [system] { header "__algorithm/comp_ref_type.h" }
-module std_private_algorithm_copy                                        [system] {
+module cxx03_std_private_algorithm_adjacent_find                               [system] { header "__algorithm/adjacent_find.h" }
+module cxx03_std_private_algorithm_all_of                                      [system] { header "__algorithm/all_of.h" }
+module cxx03_std_private_algorithm_any_of                                      [system] { header "__algorithm/any_of.h" }
+module cxx03_std_private_algorithm_binary_search                               [system] { header "__algorithm/binary_search.h" }
+module cxx03_std_private_algorithm_clamp                                       [system] { header "__algorithm/clamp.h" }
+module cxx03_std_private_algorithm_comp                                        [system] { header "__algorithm/comp.h" }
+module cxx03_std_private_algorithm_comp_ref_type                               [system] { header "__algorithm/comp_ref_type.h" }
+module cxx03_std_private_algorithm_copy                                        [system] {
   header "__algorithm/copy.h"
   export std_private_algorithm_copy_move_common
 }
-module std_private_algorithm_copy_backward                               [system] { header "__algorithm/copy_backward.h" }
-module std_private_algorithm_copy_if                                     [system] { header "__algorithm/copy_if.h" }
-module std_private_algorithm_copy_move_common                            [system] {
+module cxx03_std_private_algorithm_copy_backward                               [system] { header "__algorithm/copy_backward.h" }
+module cxx03_std_private_algorithm_copy_if                                     [system] { header "__algorithm/copy_if.h" }
+module cxx03_std_private_algorithm_copy_move_common                            [system] {
   header "__algorithm/copy_move_common.h"
   export std_private_type_traits_is_trivially_copyable
 }
-module std_private_algorithm_copy_n                                      [system] { header "__algorithm/copy_n.h" }
-module std_private_algorithm_count                                       [system] { header "__algorithm/count.h" }
-module std_private_algorithm_count_if                                    [system] { header "__algorithm/count_if.h" }
-module std_private_algorithm_equal                                       [system] { header "__algorithm/equal.h" }
-module std_private_algorithm_equal_range                                 [system] { header "__algorithm/equal_range.h" }
-module std_private_algorithm_fill                                        [system] { header "__algorithm/fill.h" }
-module std_private_algorithm_fill_n                                      [system] { header "__algorithm/fill_n.h" }
-module std_private_algorithm_find                                        [system] {
+module cxx03_std_private_algorithm_copy_n                                      [system] { header "__algorithm/copy_n.h" }
+module cxx03_std_private_algorithm_count                                       [system] { header "__algorithm/count.h" }
+module cxx03_std_private_algorithm_count_if                                    [system] { header "__algorithm/count_if.h" }
+module cxx03_std_private_algorithm_equal                                       [system] { header "__algorithm/equal.h" }
+module cxx03_std_private_algorithm_equal_range                                 [system] { header "__algorithm/equal_range.h" }
+module cxx03_std_private_algorithm_fill                                        [system] { header "__algorithm/fill.h" }
+module cxx03_std_private_algorithm_fill_n                                      [system] { header "__algorithm/fill_n.h" }
+module cxx03_std_private_algorithm_find                                        [system] {
   header "__algorithm/find.h"
   export std_private_algorithm_unwrap_iter
 }
-module std_private_algorithm_find_end                                    [system] { header "__algorithm/find_end.h" }
-module std_private_algorithm_find_first_of                               [system] { header "__algorithm/find_first_of.h" }
-module std_private_algorithm_find_if                                     [system] { header "__algorithm/find_if.h" }
-module std_private_algorithm_find_if_not                                 [system] { header "__algorithm/find_if_not.h" }
-module std_private_algorithm_find_segment_if                             [system] { header "__algorithm/find_segment_if.h" }
-module std_private_algorithm_fold                                        [system] { header "__algorithm/fold.h" }
-module std_private_algorithm_for_each                                    [system] { header "__algorithm/for_each.h" }
-module std_private_algorithm_for_each_n                                  [system] { header "__algorithm/for_each_n.h" }
-module std_private_algorithm_for_each_segment                            [system] { header "__algorithm/for_each_segment.h" }
-module std_private_algorithm_generate                                    [system] { header "__algorithm/generate.h" }
-module std_private_algorithm_generate_n                                  [system] { header "__algorithm/generate_n.h" }
-module std_private_algorithm_half_positive                               [system] { header "__algorithm/half_positive.h" }
-module std_private_algorithm_in_found_result                             [system] { header "__algorithm/in_found_result.h" }
-module std_private_algorithm_in_fun_result                               [system] { header "__algorithm/in_fun_result.h" }
-module std_private_algorithm_in_in_out_result                            [system] { header "__algorithm/in_in_out_result.h" }
-module std_private_algorithm_in_in_result                                [system] { header "__algorithm/in_in_result.h" }
-module std_private_algorithm_in_out_out_result                           [system] { header "__algorithm/in_out_out_result.h" }
-module std_private_algorithm_in_out_result                               [system] { header "__algorithm/in_out_result.h" }
-module std_private_algorithm_includes                                    [system] { header "__algorithm/includes.h" }
-module std_private_algorithm_inplace_merge                               [system] { header "__algorithm/inplace_merge.h" }
-module std_private_algorithm_is_heap                                     [system] { header "__algorithm/is_heap.h" }
-module std_private_algorithm_is_heap_until                               [system] { header "__algorithm/is_heap_until.h" }
-module std_private_algorithm_is_partitioned                              [system] { header "__algorithm/is_partitioned.h" }
-module std_private_algorithm_is_permutation                              [system] { header "__algorithm/is_permutation.h" }
-module std_private_algorithm_is_sorted                                   [system] { header "__algorithm/is_sorted.h" }
-module std_private_algorithm_is_sorted_until                             [system] { header "__algorithm/is_sorted_until.h" }
-module std_private_algorithm_iter_swap                                   [system] { header "__algorithm/iter_swap.h" }
-module std_private_algorithm_iterator_operations                         [system] {
+module cxx03_std_private_algorithm_find_end                                    [system] { header "__algorithm/find_end.h" }
+module cxx03_std_private_algorithm_find_first_of                               [system] { header "__algorithm/find_first_of.h" }
+module cxx03_std_private_algorithm_find_if                                     [system] { header "__algorithm/find_if.h" }
+module cxx03_std_private_algorithm_find_if_not                                 [system] { header "__algorithm/find_if_not.h" }
+module cxx03_std_private_algorithm_find_segment_if                             [system] { header "__algorithm/find_segment_if.h" }
+module cxx03_std_private_algorithm_fold                                        [system] { header "__algorithm/fold.h" }
+module cxx03_std_private_algorithm_for_each                                    [system] { header "__algorithm/for_each.h" }
+module cxx03_std_private_algorithm_for_each_n                                  [system] { header "__algorithm/for_each_n.h" }
+module cxx03_std_private_algorithm_for_each_segment                            [system] { header "__algorithm/for_each_segment.h" }
+module cxx03_std_private_algorithm_generate                                    [system] { header "__algorithm/generate.h" }
+module cxx03_std_private_algorithm_generate_n                                  [system] { header "__algorithm/generate_n.h" }
+module cxx03_std_private_algorithm_half_positive                               [system] { header "__algorithm/half_positive.h" }
+module cxx03_std_private_algorithm_in_found_result                             [system] { header "__algorithm/in_found_result.h" }
+module cxx03_std_private_algorithm_in_fun_result                               [system] { header "__algorithm/in_fun_result.h" }
+module cxx03_std_private_algorithm_in_in_out_result                            [system] { header "__algorithm/in_in_out_result.h" }
+module cxx03_std_private_algorithm_in_in_result                                [system] { header "__algorithm/in_in_result.h" }
+module cxx03_std_private_algorithm_in_out_out_result                           [system] { header "__algorithm/in_out_out_result.h" }
+module cxx03_std_private_algorithm_in_out_result                               [system] { header "__algorithm/in_out_result.h" }
+module cxx03_std_private_algorithm_includes                                    [system] { header "__algorithm/includes.h" }
+module cxx03_std_private_algorithm_inplace_merge                               [system] { header "__algorithm/inplace_merge.h" }
+module cxx03_std_private_algorithm_is_heap                                     [system] { header "__algorithm/is_heap.h" }
+module cxx03_std_private_algorithm_is_heap_until                               [system] { header "__algorithm/is_heap_until.h" }
+module cxx03_std_private_algorithm_is_partitioned                              [system] { header "__algorithm/is_partitioned.h" }
+module cxx03_std_private_algorithm_is_permutation                              [system] { header "__algorithm/is_permutation.h" }
+module cxx03_std_private_algorithm_is_sorted                                   [system] { header "__algorithm/is_sorted.h" }
+module cxx03_std_private_algorithm_is_sorted_until                             [system] { header "__algorithm/is_sorted_until.h" }
+module cxx03_std_private_algorithm_iter_swap                                   [system] { header "__algorithm/iter_swap.h" }
+module cxx03_std_private_algorithm_iterator_operations                         [system] {
   header "__algorithm/iterator_operations.h"
   export *
 }
-module std_private_algorithm_lexicographical_compare                     [system] { header "__algorithm/lexicographical_compare.h" }
-module std_private_algorithm_lexicographical_compare_three_way           [system] { header "__algorithm/lexicographical_compare_three_way.h" }
-module std_private_algorithm_lower_bound                                 [system] { header "__algorithm/lower_bound.h" }
-module std_private_algorithm_make_heap                                   [system] { header "__algorithm/make_heap.h" }
-module std_private_algorithm_make_projected                              [system] { header "__algorithm/make_projected.h" }
-module std_private_algorithm_max                                         [system] { header "__algorithm/max.h" }
-module std_private_algorithm_max_element                                 [system] { header "__algorithm/max_element.h" }
-module std_private_algorithm_merge                                       [system] { header "__algorithm/merge.h" }
-module std_private_algorithm_min                                         [system] { header "__algorithm/min.h" }
-module std_private_algorithm_min_element                                 [system] { header "__algorithm/min_element.h" }
-module std_private_algorithm_min_max_result                              [system] { header "__algorithm/min_max_result.h" }
-module std_private_algorithm_minmax                                      [system] {
+module cxx03_std_private_algorithm_lexicographical_compare                     [system] { header "__algorithm/lexicographical_compare.h" }
+module cxx03_std_private_algorithm_lexicographical_compare_three_way           [system] { header "__algorithm/lexicographical_compare_three_way.h" }
+module cxx03_std_private_algorithm_lower_bound                                 [system] { header "__algorithm/lower_bound.h" }
+module cxx03_std_private_algorithm_make_heap                                   [system] { header "__algorithm/make_heap.h" }
+module cxx03_std_private_algorithm_make_projected                              [system] { header "__algorithm/make_projected.h" }
+module cxx03_std_private_algorithm_max                                         [system] { header "__algorithm/max.h" }
+module cxx03_std_private_algorithm_max_element                                 [system] { header "__algorithm/max_element.h" }
+module cxx03_std_private_algorithm_merge                                       [system] { header "__algorithm/merge.h" }
+module cxx03_std_private_algorithm_min                                         [system] { header "__algorithm/min.h" }
+module cxx03_std_private_algorithm_min_element                                 [system] { header "__algorithm/min_element.h" }
+module cxx03_std_private_algorithm_min_max_result                              [system] { header "__algorithm/min_max_result.h" }
+module cxx03_std_private_algorithm_minmax                                      [system] {
   header "__algorithm/minmax.h"
   export *
 }
-module std_private_algorithm_minmax_element                              [system] { header "__algorithm/minmax_element.h" }
-module std_private_algorithm_mismatch                                    [system] {
+module cxx03_std_private_algorithm_minmax_element                              [system] { header "__algorithm/minmax_element.h" }
+module cxx03_std_private_algorithm_mismatch                                    [system] {
   header "__algorithm/mismatch.h"
   export std_private_algorithm_simd_utils
   export std_private_iterator_aliasing_iterator
 }
-module std_private_algorithm_move                                        [system] { header "__algorithm/move.h" }
-module std_private_algorithm_move_backward                               [system] { header "__algorithm/move_backward.h" }
-module std_private_algorithm_next_permutation                            [system] { header "__algorithm/next_permutation.h" }
-module std_private_algorithm_none_of                                     [system] { header "__algorithm/none_of.h" }
-module std_private_algorithm_nth_element                                 [system] { header "__algorithm/nth_element.h" }
-module std_private_algorithm_partial_sort                                [system] { header "__algorithm/partial_sort.h" }
-module std_private_algorithm_partial_sort_copy                           [system] { header "__algorithm/partial_sort_copy.h" }
-module std_private_algorithm_partition                                   [system] { header "__algorithm/partition.h" }
-module std_private_algorithm_partition_copy                              [system] { header "__algorithm/partition_copy.h" }
-module std_private_algorithm_partition_point                             [system] { header "__algorithm/partition_point.h" }
-module std_private_algorithm_pop_heap                                    [system] { header "__algorithm/pop_heap.h" }
-module std_private_algorithm_prev_permutation                            [system] { header "__algorithm/prev_permutation.h" }
-module std_private_algorithm_pstl                                        [system] {
+module cxx03_std_private_algorithm_move                                        [system] { header "__algorithm/move.h" }
+module cxx03_std_private_algorithm_move_backward                               [system] { header "__algorithm/move_backward.h" }
+module cxx03_std_private_algorithm_next_permutation                            [system] { header "__algorithm/next_permutation.h" }
+module cxx03_std_private_algorithm_none_of                                     [system] { header "__algorithm/none_of.h" }
+module cxx03_std_private_algorithm_nth_element                                 [system] { header "__algorithm/nth_element.h" }
+module cxx03_std_private_algorithm_partial_sort                                [system] { header "__algorithm/partial_sort.h" }
+module cxx03_std_private_algorithm_partial_sort_copy                           [system] { header "__algorithm/partial_sort_copy.h" }
+module cxx03_std_private_algorithm_partition                                   [system] { header "__algorithm/partition.h" }
+module cxx03_std_private_algorithm_partition_copy                              [system] { header "__algorithm/partition_copy.h" }
+module cxx03_std_private_algorithm_partition_point                             [system] { header "__algorithm/partition_point.h" }
+module cxx03_std_private_algorithm_pop_heap                                    [system] { header "__algorithm/pop_heap.h" }
+module cxx03_std_private_algorithm_prev_permutation                            [system] { header "__algorithm/prev_permutation.h" }
+module cxx03_std_private_algorithm_pstl                                        [system] {
   header "__algorithm/pstl.h"
   export *
 }
-module std_private_algorithm_push_heap                                   [system] { header "__algorithm/push_heap.h" }
-module std_private_algorithm_ranges_adjacent_find                        [system] { header "__algorithm/ranges_adjacent_find.h" }
-module std_private_algorithm_ranges_all_of                               [system] { header "__algorithm/ranges_all_of.h" }
-module std_private_algorithm_ranges_any_of                               [system] { header "__algorithm/ranges_any_of.h" }
-module std_private_algorithm_ranges_binary_search                        [system] {
+module cxx03_std_private_algorithm_push_heap                                   [system] { header "__algorithm/push_heap.h" }
+module cxx03_std_private_algorithm_ranges_adjacent_find                        [system] { header "__algorithm/ranges_adjacent_find.h" }
+module cxx03_std_private_algorithm_ranges_all_of                               [system] { header "__algorithm/ranges_all_of.h" }
+module cxx03_std_private_algorithm_ranges_any_of                               [system] { header "__algorithm/ranges_any_of.h" }
+module cxx03_std_private_algorithm_ranges_binary_search                        [system] {
   header "__algorithm/ranges_binary_search.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_clamp                                [system] {
+module cxx03_std_private_algorithm_ranges_clamp                                [system] {
   header "__algorithm/ranges_clamp.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_contains                             [system] { header "__algorithm/ranges_contains.h" }
-module std_private_algorithm_ranges_contains_subrange                    [system] { header "__algorithm/ranges_contains_subrange.h" }
-module std_private_algorithm_ranges_copy                                 [system] {
+module cxx03_std_private_algorithm_ranges_contains                             [system] { header "__algorithm/ranges_contains.h" }
+module cxx03_std_private_algorithm_ranges_contains_subrange                    [system] { header "__algorithm/ranges_contains_subrange.h" }
+module cxx03_std_private_algorithm_ranges_copy                                 [system] {
   header "__algorithm/ranges_copy.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_copy_backward                        [system] {
+module cxx03_std_private_algorithm_ranges_copy_backward                        [system] {
   header "__algorithm/ranges_copy_backward.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_copy_if                              [system] {
+module cxx03_std_private_algorithm_ranges_copy_if                              [system] {
   header "__algorithm/ranges_copy_if.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_copy_n                               [system] {
+module cxx03_std_private_algorithm_ranges_copy_n                               [system] {
   header "__algorithm/ranges_copy_n.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_count                                [system] { header "__algorithm/ranges_count.h" }
-module std_private_algorithm_ranges_count_if                             [system] { header "__algorithm/ranges_count_if.h" }
-module std_private_algorithm_ranges_ends_with                            [system] { header "__algorithm/ranges_ends_with.h" }
-module std_private_algorithm_ranges_equal                                [system] { header "__algorithm/ranges_equal.h" }
-module std_private_algorithm_ranges_equal_range                          [system] {
+module cxx03_std_private_algorithm_ranges_count                                [system] { header "__algorithm/ranges_count.h" }
+module cxx03_std_private_algorithm_ranges_count_if                             [system] { header "__algorithm/ranges_count_if.h" }
+module cxx03_std_private_algorithm_ranges_ends_with                            [system] { header "__algorithm/ranges_ends_with.h" }
+module cxx03_std_private_algorithm_ranges_equal                                [system] { header "__algorithm/ranges_equal.h" }
+module cxx03_std_private_algorithm_ranges_equal_range                          [system] {
   header "__algorithm/ranges_equal_range.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_fill                                 [system] { header "__algorithm/ranges_fill.h" }
-module std_private_algorithm_ranges_fill_n                               [system] { header "__algorithm/ranges_fill_n.h" }
-module std_private_algorithm_ranges_find                                 [system] { header "__algorithm/ranges_find.h" }
-module std_private_algorithm_ranges_find_end                             [system] { header "__algorithm/ranges_find_end.h" }
-module std_private_algorithm_ranges_find_first_of                        [system] { header "__algorithm/ranges_find_first_of.h" }
-module std_private_algorithm_ranges_find_if                              [system] { header "__algorithm/ranges_find_if.h" }
-module std_private_algorithm_ranges_find_if_not                          [system] { header "__algorithm/ranges_find_if_not.h" }
-module std_private_algorithm_ranges_find_last                            [system] { header "__algorithm/ranges_find_last.h" }
-module std_private_algorithm_ranges_for_each                             [system] {
+module cxx03_std_private_algorithm_ranges_fill                                 [system] { header "__algorithm/ranges_fill.h" }
+module cxx03_std_private_algorithm_ranges_fill_n                               [system] { header "__algorithm/ranges_fill_n.h" }
+module cxx03_std_private_algorithm_ranges_find                                 [system] { header "__algorithm/ranges_find.h" }
+module cxx03_std_private_algorithm_ranges_find_end                             [system] { header "__algorithm/ranges_find_end.h" }
+module cxx03_std_private_algorithm_ranges_find_first_of                        [system] { header "__algorithm/ranges_find_first_of.h" }
+module cxx03_std_private_algorithm_ranges_find_if                              [system] { header "__algorithm/ranges_find_if.h" }
+module cxx03_std_private_algorithm_ranges_find_if_not                          [system] { header "__algorithm/ranges_find_if_not.h" }
+module cxx03_std_private_algorithm_ranges_find_last                            [system] { header "__algorithm/ranges_find_last.h" }
+module cxx03_std_private_algorithm_ranges_for_each                             [system] {
   header "__algorithm/ranges_for_each.h"
   export std_private_algorithm_in_fun_result
 }
-module std_private_algorithm_ranges_for_each_n                           [system] {
+module cxx03_std_private_algorithm_ranges_for_each_n                           [system] {
   header "__algorithm/ranges_for_each_n.h"
   export std_private_algorithm_in_fun_result
 }
-module std_private_algorithm_ranges_generate                             [system] { header "__algorithm/ranges_generate.h" }
-module std_private_algorithm_ranges_generate_n                           [system] { header "__algorithm/ranges_generate_n.h" }
-module std_private_algorithm_ranges_includes                             [system] {
+module cxx03_std_private_algorithm_ranges_generate                             [system] { header "__algorithm/ranges_generate.h" }
+module cxx03_std_private_algorithm_ranges_generate_n                           [system] { header "__algorithm/ranges_generate_n.h" }
+module cxx03_std_private_algorithm_ranges_includes                             [system] {
   header "__algorithm/ranges_includes.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_inplace_merge                        [system] {
+module cxx03_std_private_algorithm_ranges_inplace_merge                        [system] {
   header "__algorithm/ranges_inplace_merge.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_is_heap                              [system] {
+module cxx03_std_private_algorithm_ranges_is_heap                              [system] {
   header "__algorithm/ranges_is_heap.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_is_heap_until                        [system] {
+module cxx03_std_private_algorithm_ranges_is_heap_until                        [system] {
   header "__algorithm/ranges_is_heap_until.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_is_partitioned                       [system] { header "__algorithm/ranges_is_partitioned.h" }
-module std_private_algorithm_ranges_is_permutation                       [system] { header "__algorithm/ranges_is_permutation.h" }
-module std_private_algorithm_ranges_is_sorted                            [system] {
+module cxx03_std_private_algorithm_ranges_is_partitioned                       [system] { header "__algorithm/ranges_is_partitioned.h" }
+module cxx03_std_private_algorithm_ranges_is_permutation                       [system] { header "__algorithm/ranges_is_permutation.h" }
+module cxx03_std_private_algorithm_ranges_is_sorted                            [system] {
   header "__algorithm/ranges_is_sorted.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_is_sorted_until                      [system] {
+module cxx03_std_private_algorithm_ranges_is_sorted_until                      [system] {
   header "__algorithm/ranges_is_sorted_until.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_iterator_concept                     [system] { header "__algorithm/ranges_iterator_concept.h" }
-module std_private_algorithm_ranges_lexicographical_compare              [system] {
+module cxx03_std_private_algorithm_ranges_iterator_concept                     [system] { header "__algorithm/ranges_iterator_concept.h" }
+module cxx03_std_private_algorithm_ranges_lexicographical_compare              [system] {
   header "__algorithm/ranges_lexicographical_compare.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_lower_bound                          [system] {
+module cxx03_std_private_algorithm_ranges_lower_bound                          [system] {
   header "__algorithm/ranges_lower_bound.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_make_heap                            [system] {
+module cxx03_std_private_algorithm_ranges_make_heap                            [system] {
   header "__algorithm/ranges_make_heap.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_max                                  [system] {
+module cxx03_std_private_algorithm_ranges_max                                  [system] {
   header "__algorithm/ranges_max.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_max_element                          [system] {
+module cxx03_std_private_algorithm_ranges_max_element                          [system] {
   header "__algorithm/ranges_max_element.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_merge                                [system] {
+module cxx03_std_private_algorithm_ranges_merge                                [system] {
   header "__algorithm/ranges_merge.h"
   export std_private_algorithm_in_in_out_result
 }
-module std_private_algorithm_ranges_min                                  [system] {
+module cxx03_std_private_algorithm_ranges_min                                  [system] {
   header "__algorithm/ranges_min.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_min_element                          [system] {
+module cxx03_std_private_algorithm_ranges_min_element                          [system] {
   header "__algorithm/ranges_min_element.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_minmax                               [system] {
+module cxx03_std_private_algorithm_ranges_minmax                               [system] {
   header "__algorithm/ranges_minmax.h"
   export std_private_functional_ranges_operations
   export std_private_algorithm_min_max_result
 }
-module std_private_algorithm_ranges_minmax_element                       [system] {
+module cxx03_std_private_algorithm_ranges_minmax_element                       [system] {
   header "__algorithm/ranges_minmax_element.h"
   export std_private_functional_ranges_operations
   export std_private_algorithm_min_max_result
 }
-module std_private_algorithm_ranges_mismatch                             [system] {
+module cxx03_std_private_algorithm_ranges_mismatch                             [system] {
   header "__algorithm/ranges_mismatch.h"
   export std_private_algorithm_in_in_result
 }
-module std_private_algorithm_ranges_move                                 [system] {
+module cxx03_std_private_algorithm_ranges_move                                 [system] {
   header "__algorithm/ranges_move.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_move_backward                        [system] {
+module cxx03_std_private_algorithm_ranges_move_backward                        [system] {
   header "__algorithm/ranges_move_backward.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_next_permutation                     [system] {
+module cxx03_std_private_algorithm_ranges_next_permutation                     [system] {
   header "__algorithm/ranges_next_permutation.h"
   export std_private_algorithm_in_found_result
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_none_of                              [system] { header "__algorithm/ranges_none_of.h" }
-module std_private_algorithm_ranges_nth_element                          [system] {
+module cxx03_std_private_algorithm_ranges_none_of                              [system] { header "__algorithm/ranges_none_of.h" }
+module cxx03_std_private_algorithm_ranges_nth_element                          [system] {
   header "__algorithm/ranges_nth_element.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_partial_sort                         [system] {
+module cxx03_std_private_algorithm_ranges_partial_sort                         [system] {
   header "__algorithm/ranges_partial_sort.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_partial_sort_copy                    [system] {
+module cxx03_std_private_algorithm_ranges_partial_sort_copy                    [system] {
   header "__algorithm/ranges_partial_sort_copy.h"
   export std_private_algorithm_in_out_result
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_partition                            [system] { header "__algorithm/ranges_partition.h" }
-module std_private_algorithm_ranges_partition_copy                       [system] { header "__algorithm/ranges_partition_copy.h" }
-module std_private_algorithm_ranges_partition_point                      [system] { header "__algorithm/ranges_partition_point.h" }
-module std_private_algorithm_ranges_pop_heap                             [system] {
+module cxx03_std_private_algorithm_ranges_partition                            [system] { header "__algorithm/ranges_partition.h" }
+module cxx03_std_private_algorithm_ranges_partition_copy                       [system] { header "__algorithm/ranges_partition_copy.h" }
+module cxx03_std_private_algorithm_ranges_partition_point                      [system] { header "__algorithm/ranges_partition_point.h" }
+module cxx03_std_private_algorithm_ranges_pop_heap                             [system] {
   header "__algorithm/ranges_pop_heap.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_prev_permutation                     [system] {
+module cxx03_std_private_algorithm_ranges_prev_permutation                     [system] {
   header "__algorithm/ranges_prev_permutation.h"
   export std_private_algorithm_in_found_result
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_push_heap                            [system] {
+module cxx03_std_private_algorithm_ranges_push_heap                            [system] {
   header "__algorithm/ranges_push_heap.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_remove                               [system] { header "__algorithm/ranges_remove.h" }
-module std_private_algorithm_ranges_remove_copy                          [system] {
+module cxx03_std_private_algorithm_ranges_remove                               [system] { header "__algorithm/ranges_remove.h" }
+module cxx03_std_private_algorithm_ranges_remove_copy                          [system] {
   header "__algorithm/ranges_remove_copy.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_remove_copy_if                       [system] {
+module cxx03_std_private_algorithm_ranges_remove_copy_if                       [system] {
   header "__algorithm/ranges_remove_copy_if.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_remove_if                            [system] { header "__algorithm/ranges_remove_if.h" }
-module std_private_algorithm_ranges_replace                              [system] { header "__algorithm/ranges_replace.h" }
-module std_private_algorithm_ranges_replace_copy                         [system] {
+module cxx03_std_private_algorithm_ranges_remove_if                            [system] { header "__algorithm/ranges_remove_if.h" }
+module cxx03_std_private_algorithm_ranges_replace                              [system] { header "__algorithm/ranges_replace.h" }
+module cxx03_std_private_algorithm_ranges_replace_copy                         [system] {
   header "__algorithm/ranges_replace_copy.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_replace_copy_if                      [system] {
+module cxx03_std_private_algorithm_ranges_replace_copy_if                      [system] {
   header "__algorithm/ranges_replace_copy_if.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_replace_if                           [system] { header "__algorithm/ranges_replace_if.h" }
-module std_private_algorithm_ranges_reverse                              [system] { header "__algorithm/ranges_reverse.h" }
-module std_private_algorithm_ranges_reverse_copy                         [system] {
+module cxx03_std_private_algorithm_ranges_replace_if                           [system] { header "__algorithm/ranges_replace_if.h" }
+module cxx03_std_private_algorithm_ranges_reverse                              [system] { header "__algorithm/ranges_reverse.h" }
+module cxx03_std_private_algorithm_ranges_reverse_copy                         [system] {
   header "__algorithm/ranges_reverse_copy.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_rotate                               [system] { header "__algorithm/ranges_rotate.h" }
-module std_private_algorithm_ranges_rotate_copy                          [system] {
+module cxx03_std_private_algorithm_ranges_rotate                               [system] { header "__algorithm/ranges_rotate.h" }
+module cxx03_std_private_algorithm_ranges_rotate_copy                          [system] {
   header "__algorithm/ranges_rotate_copy.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_sample                               [system] { header "__algorithm/ranges_sample.h" }
-module std_private_algorithm_ranges_search                               [system] { header "__algorithm/ranges_search.h" }
-module std_private_algorithm_ranges_search_n                             [system] { header "__algorithm/ranges_search_n.h" }
-module std_private_algorithm_ranges_set_
diff erence                       [system] {
+module cxx03_std_private_algorithm_ranges_sample                               [system] { header "__algorithm/ranges_sample.h" }
+module cxx03_std_private_algorithm_ranges_search                               [system] { header "__algorithm/ranges_search.h" }
+module cxx03_std_private_algorithm_ranges_search_n                             [system] { header "__algorithm/ranges_search_n.h" }
+module cxx03_std_private_algorithm_ranges_set_
diff erence                       [system] {
   header "__algorithm/ranges_set_
diff erence.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_set_intersection                     [system] {
+module cxx03_std_private_algorithm_ranges_set_intersection                     [system] {
   header "__algorithm/ranges_set_intersection.h"
   export std_private_algorithm_in_in_out_result
 }
-module std_private_algorithm_ranges_set_symmetric_
diff erence             [system] {
+module cxx03_std_private_algorithm_ranges_set_symmetric_
diff erence             [system] {
   header "__algorithm/ranges_set_symmetric_
diff erence.h"
   export std_private_algorithm_in_in_out_result
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_set_union                            [system] {
+module cxx03_std_private_algorithm_ranges_set_union                            [system] {
   header "__algorithm/ranges_set_union.h"
   export std_private_algorithm_in_in_out_result
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_shuffle                              [system] { header "__algorithm/ranges_shuffle.h" }
-module std_private_algorithm_ranges_sort                                 [system] {
+module cxx03_std_private_algorithm_ranges_shuffle                              [system] { header "__algorithm/ranges_shuffle.h" }
+module cxx03_std_private_algorithm_ranges_sort                                 [system] {
   header "__algorithm/ranges_sort.h"
   export std_private_algorithm_make_projected
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_sort_heap                            [system] {
+module cxx03_std_private_algorithm_ranges_sort_heap                            [system] {
   header "__algorithm/ranges_sort_heap.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_stable_partition                     [system] { header "__algorithm/ranges_stable_partition.h" }
-module std_private_algorithm_ranges_stable_sort                          [system] {
+module cxx03_std_private_algorithm_ranges_stable_partition                     [system] { header "__algorithm/ranges_stable_partition.h" }
+module cxx03_std_private_algorithm_ranges_stable_sort                          [system] {
   header "__algorithm/ranges_stable_sort.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_ranges_starts_with                          [system] { header "__algorithm/ranges_starts_with.h" }
-module std_private_algorithm_ranges_swap_ranges                          [system] {
+module cxx03_std_private_algorithm_ranges_starts_with                          [system] { header "__algorithm/ranges_starts_with.h" }
+module cxx03_std_private_algorithm_ranges_swap_ranges                          [system] {
   header "__algorithm/ranges_swap_ranges.h"
   export std_private_algorithm_in_in_result
 }
-module std_private_algorithm_ranges_transform                            [system] {
+module cxx03_std_private_algorithm_ranges_transform                            [system] {
   header "__algorithm/ranges_transform.h"
   export std_private_algorithm_in_in_out_result
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_unique                               [system] { header "__algorithm/ranges_unique.h" }
-module std_private_algorithm_ranges_unique_copy                          [system] {
+module cxx03_std_private_algorithm_ranges_unique                               [system] { header "__algorithm/ranges_unique.h" }
+module cxx03_std_private_algorithm_ranges_unique_copy                          [system] {
   header "__algorithm/ranges_unique_copy.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_algorithm_ranges_upper_bound                          [system] {
+module cxx03_std_private_algorithm_ranges_upper_bound                          [system] {
   header "__algorithm/ranges_upper_bound.h"
   export std_private_functional_ranges_operations
 }
-module std_private_algorithm_remove                                      [system] { header "__algorithm/remove.h" }
-module std_private_algorithm_remove_copy                                 [system] { header "__algorithm/remove_copy.h" }
-module std_private_algorithm_remove_copy_if                              [system] { header "__algorithm/remove_copy_if.h" }
-module std_private_algorithm_remove_if                                   [system] { header "__algorithm/remove_if.h" }
-module std_private_algorithm_replace                                     [system] { header "__algorithm/replace.h" }
-module std_private_algorithm_replace_copy                                [system] { header "__algorithm/replace_copy.h" }
-module std_private_algorithm_replace_copy_if                             [system] { header "__algorithm/replace_copy_if.h" }
-module std_private_algorithm_replace_if                                  [system] { header "__algorithm/replace_if.h" }
-module std_private_algorithm_reverse                                     [system] { header "__algorithm/reverse.h" }
-module std_private_algorithm_reverse_copy                                [system] { header "__algorithm/reverse_copy.h" }
-module std_private_algorithm_rotate                                      [system] { header "__algorithm/rotate.h" }
-module std_private_algorithm_rotate_copy                                 [system] { header "__algorithm/rotate_copy.h" }
-module std_private_algorithm_sample                                      [system] { header "__algorithm/sample.h" }
-module std_private_algorithm_search                                      [system] { header "__algorithm/search.h" }
-module std_private_algorithm_search_n                                    [system] { header "__algorithm/search_n.h" }
-module std_private_algorithm_set_
diff erence                              [system] { header "__algorithm/set_
diff erence.h" }
-module std_private_algorithm_set_intersection                            [system] { header "__algorithm/set_intersection.h" }
-module std_private_algorithm_set_symmetric_
diff erence                    [system] { header "__algorithm/set_symmetric_
diff erence.h" }
-module std_private_algorithm_set_union                                   [system] { header "__algorithm/set_union.h" }
-module std_private_algorithm_shift_left                                  [system] { header "__algorithm/shift_left.h" }
-module std_private_algorithm_shift_right                                 [system] { header "__algorithm/shift_right.h" }
-module std_private_algorithm_shuffle                                     [system] { header "__algorithm/shuffle.h" }
-module std_private_algorithm_sift_down                                   [system] { header "__algorithm/sift_down.h" }
-module std_private_algorithm_sort                                        [system] {
+module cxx03_std_private_algorithm_remove                                      [system] { header "__algorithm/remove.h" }
+module cxx03_std_private_algorithm_remove_copy                                 [system] { header "__algorithm/remove_copy.h" }
+module cxx03_std_private_algorithm_remove_copy_if                              [system] { header "__algorithm/remove_copy_if.h" }
+module cxx03_std_private_algorithm_remove_if                                   [system] { header "__algorithm/remove_if.h" }
+module cxx03_std_private_algorithm_replace                                     [system] { header "__algorithm/replace.h" }
+module cxx03_std_private_algorithm_replace_copy                                [system] { header "__algorithm/replace_copy.h" }
+module cxx03_std_private_algorithm_replace_copy_if                             [system] { header "__algorithm/replace_copy_if.h" }
+module cxx03_std_private_algorithm_replace_if                                  [system] { header "__algorithm/replace_if.h" }
+module cxx03_std_private_algorithm_reverse                                     [system] { header "__algorithm/reverse.h" }
+module cxx03_std_private_algorithm_reverse_copy                                [system] { header "__algorithm/reverse_copy.h" }
+module cxx03_std_private_algorithm_rotate                                      [system] { header "__algorithm/rotate.h" }
+module cxx03_std_private_algorithm_rotate_copy                                 [system] { header "__algorithm/rotate_copy.h" }
+module cxx03_std_private_algorithm_sample                                      [system] { header "__algorithm/sample.h" }
+module cxx03_std_private_algorithm_search                                      [system] { header "__algorithm/search.h" }
+module cxx03_std_private_algorithm_search_n                                    [system] { header "__algorithm/search_n.h" }
+module cxx03_std_private_algorithm_set_
diff erence                              [system] { header "__algorithm/set_
diff erence.h" }
+module cxx03_std_private_algorithm_set_intersection                            [system] { header "__algorithm/set_intersection.h" }
+module cxx03_std_private_algorithm_set_symmetric_
diff erence                    [system] { header "__algorithm/set_symmetric_
diff erence.h" }
+module cxx03_std_private_algorithm_set_union                                   [system] { header "__algorithm/set_union.h" }
+module cxx03_std_private_algorithm_shift_left                                  [system] { header "__algorithm/shift_left.h" }
+module cxx03_std_private_algorithm_shift_right                                 [system] { header "__algorithm/shift_right.h" }
+module cxx03_std_private_algorithm_shuffle                                     [system] { header "__algorithm/shuffle.h" }
+module cxx03_std_private_algorithm_sift_down                                   [system] { header "__algorithm/sift_down.h" }
+module cxx03_std_private_algorithm_sort                                        [system] {
   header "__algorithm/sort.h"
   export std_private_debug_utils_strict_weak_ordering_check
 }
-module std_private_algorithm_simd_utils                                  [system] { header "__algorithm/simd_utils.h" }
-module std_private_algorithm_sort_heap                                   [system] { header "__algorithm/sort_heap.h" }
-module std_private_algorithm_stable_partition                            [system] { header "__algorithm/stable_partition.h" }
-module std_private_algorithm_stable_sort                                 [system] { header "__algorithm/stable_sort.h" }
-module std_private_algorithm_swap_ranges                                 [system] {
+module cxx03_std_private_algorithm_simd_utils                                  [system] { header "__algorithm/simd_utils.h" }
+module cxx03_std_private_algorithm_sort_heap                                   [system] { header "__algorithm/sort_heap.h" }
+module cxx03_std_private_algorithm_stable_partition                            [system] { header "__algorithm/stable_partition.h" }
+module cxx03_std_private_algorithm_stable_sort                                 [system] { header "__algorithm/stable_sort.h" }
+module cxx03_std_private_algorithm_swap_ranges                                 [system] {
   header "__algorithm/swap_ranges.h"
   export std_private_algorithm_iterator_operations
 }
-module std_private_algorithm_three_way_comp_ref_type                     [system] { header "__algorithm/three_way_comp_ref_type.h" }
-module std_private_algorithm_transform                                   [system] { header "__algorithm/transform.h" }
-module std_private_algorithm_uniform_random_bit_generator_adaptor        [system] { header "__algorithm/uniform_random_bit_generator_adaptor.h" }
-module std_private_algorithm_unique                                      [system] { header "__algorithm/unique.h" }
-module std_private_algorithm_unique_copy                                 [system] { header "__algorithm/unique_copy.h" }
-module std_private_algorithm_unwrap_iter                                 [system] {
+module cxx03_std_private_algorithm_three_way_comp_ref_type                     [system] { header "__algorithm/three_way_comp_ref_type.h" }
+module cxx03_std_private_algorithm_transform                                   [system] { header "__algorithm/transform.h" }
+module cxx03_std_private_algorithm_uniform_random_bit_generator_adaptor        [system] { header "__algorithm/uniform_random_bit_generator_adaptor.h" }
+module cxx03_std_private_algorithm_unique                                      [system] { header "__algorithm/unique.h" }
+module cxx03_std_private_algorithm_unique_copy                                 [system] { header "__algorithm/unique_copy.h" }
+module cxx03_std_private_algorithm_unwrap_iter                                 [system] {
   header "__algorithm/unwrap_iter.h"
   export std_private_iterator_iterator_traits
 }
-module std_private_algorithm_unwrap_range                                [system] {
+module cxx03_std_private_algorithm_unwrap_range                                [system] {
   header "__algorithm/unwrap_range.h"
   export std_private_utility_pair
 }
-module std_private_algorithm_upper_bound                                 [system] { header "__algorithm/upper_bound.h" }
+module cxx03_std_private_algorithm_upper_bound                                 [system] { header "__algorithm/upper_bound.h" }
 
-module std_private_array_array_fwd [system] { header "__fwd/array.h" }
+module cxx03_std_private_array_array_fwd [system] { header "__fwd/array.h" }
 
-module std_private_atomic_aliases             [system] {
+module cxx03_std_private_atomic_aliases             [system] {
   header "__atomic/aliases.h"
   export std_private_atomic_atomic
 }
-module std_private_atomic_atomic              [system] {
+module cxx03_std_private_atomic_atomic              [system] {
   header "__atomic/atomic.h"
   export std_private_atomic_atomic_base
 }
-module std_private_atomic_atomic_base         [system] { header "__atomic/atomic_base.h" }
-module std_private_atomic_atomic_flag         [system] {
+module cxx03_std_private_atomic_atomic_base         [system] { header "__atomic/atomic_base.h" }
+module cxx03_std_private_atomic_atomic_flag         [system] {
   header "__atomic/atomic_flag.h"
   export *
 }
-module std_private_atomic_atomic_init         [system] { header "__atomic/atomic_init.h" }
-module std_private_atomic_atomic_lock_free    [system] { header "__atomic/atomic_lock_free.h" }
-module std_private_atomic_atomic_ref          [system] { header "__atomic/atomic_ref.h" }
-module std_private_atomic_atomic_sync         [system] {
+module cxx03_std_private_atomic_atomic_init         [system] { header "__atomic/atomic_init.h" }
+module cxx03_std_private_atomic_atomic_lock_free    [system] { header "__atomic/atomic_lock_free.h" }
+module cxx03_std_private_atomic_atomic_ref          [system] { header "__atomic/atomic_ref.h" }
+module cxx03_std_private_atomic_atomic_sync         [system] {
   header "__atomic/atomic_sync.h"
   export std_private_atomic_to_gcc_order
 }
-module std_private_atomic_check_memory_order  [system] { header "__atomic/check_memory_order.h" }
-module std_private_atomic_contention_t        [system] { header "__atomic/contention_t.h" }
-module std_private_atomic_cxx_atomic_impl     [system] { header "__atomic/cxx_atomic_impl.h" }
-module std_private_atomic_fence               [system] { header "__atomic/fence.h" }
-module std_private_atomic_is_always_lock_free [system] { header "__atomic/is_always_lock_free.h" }
-module std_private_atomic_kill_dependency     [system] { header "__atomic/kill_dependency.h" }
-module std_private_atomic_memory_order        [system] { header "__atomic/memory_order.h" }
-module std_private_atomic_to_gcc_order        [system] {
+module cxx03_std_private_atomic_check_memory_order  [system] { header "__atomic/check_memory_order.h" }
+module cxx03_std_private_atomic_contention_t        [system] { header "__atomic/contention_t.h" }
+module cxx03_std_private_atomic_cxx_atomic_impl     [system] { header "__atomic/cxx_atomic_impl.h" }
+module cxx03_std_private_atomic_fence               [system] { header "__atomic/fence.h" }
+module cxx03_std_private_atomic_is_always_lock_free [system] { header "__atomic/is_always_lock_free.h" }
+module cxx03_std_private_atomic_kill_dependency     [system] { header "__atomic/kill_dependency.h" }
+module cxx03_std_private_atomic_memory_order        [system] { header "__atomic/memory_order.h" }
+module cxx03_std_private_atomic_to_gcc_order        [system] {
   header "__atomic/to_gcc_order.h"
   export std_private_atomic_memory_order
 }
 
-module std_private_bit_bit_cast       [system] { header "__bit/bit_cast.h" }
-module std_private_bit_bit_ceil       [system] { header "__bit/bit_ceil.h" }
-module std_private_bit_bit_floor      [system] { header "__bit/bit_floor.h" }
-module std_private_bit_bit_log2       [system] { header "__bit/bit_log2.h" }
-module std_private_bit_bit_width      [system] { header "__bit/bit_width.h" }
-module std_private_bit_blsr           [system] { header "__bit/blsr.h" }
-module std_private_bit_byteswap       [system] { header "__bit/byteswap.h" }
-module std_private_bit_countl         [system] { header "__bit/countl.h" }
-module std_private_bit_countr         [system] { header "__bit/countr.h" }
-module std_private_bit_endian         [system] { header "__bit/endian.h" }
-module std_private_bit_has_single_bit [system] { header "__bit/has_single_bit.h" }
-module std_private_bit_invert_if      [system] { header "__bit/invert_if.h" }
-module std_private_bit_popcount       [system] { header "__bit/popcount.h" }
-module std_private_bit_rotate         [system] { header "__bit/rotate.h" }
+module cxx03_std_private_bit_bit_cast       [system] { header "__bit/bit_cast.h" }
+module cxx03_std_private_bit_bit_ceil       [system] { header "__bit/bit_ceil.h" }
+module cxx03_std_private_bit_bit_floor      [system] { header "__bit/bit_floor.h" }
+module cxx03_std_private_bit_bit_log2       [system] { header "__bit/bit_log2.h" }
+module cxx03_std_private_bit_bit_width      [system] { header "__bit/bit_width.h" }
+module cxx03_std_private_bit_blsr           [system] { header "__bit/blsr.h" }
+module cxx03_std_private_bit_byteswap       [system] { header "__bit/byteswap.h" }
+module cxx03_std_private_bit_countl         [system] { header "__bit/countl.h" }
+module cxx03_std_private_bit_countr         [system] { header "__bit/countr.h" }
+module cxx03_std_private_bit_endian         [system] { header "__bit/endian.h" }
+module cxx03_std_private_bit_has_single_bit [system] { header "__bit/has_single_bit.h" }
+module cxx03_std_private_bit_invert_if      [system] { header "__bit/invert_if.h" }
+module cxx03_std_private_bit_popcount       [system] { header "__bit/popcount.h" }
+module cxx03_std_private_bit_rotate         [system] { header "__bit/rotate.h" }
 
-module std_private_charconv_chars_format            [system] { header "__charconv/chars_format.h" }
-module std_private_charconv_from_chars_integral     [system] { header "__charconv/from_chars_integral.h" }
-module std_private_charconv_from_chars_result       [system] { header "__charconv/from_chars_result.h" }
-module std_private_charconv_tables                  [system] { header "__charconv/tables.h" }
-module std_private_charconv_to_chars                [system] { header "__charconv/to_chars.h" }
-module std_private_charconv_to_chars_base_10        [system] { header "__charconv/to_chars_base_10.h" }
-module std_private_charconv_to_chars_floating_point [system] { header "__charconv/to_chars_floating_point.h" }
-module std_private_charconv_to_chars_integral       [system] {
+module cxx03_std_private_charconv_chars_format            [system] { header "__charconv/chars_format.h" }
+module cxx03_std_private_charconv_from_chars_integral     [system] { header "__charconv/from_chars_integral.h" }
+module cxx03_std_private_charconv_from_chars_result       [system] { header "__charconv/from_chars_result.h" }
+module cxx03_std_private_charconv_tables                  [system] { header "__charconv/tables.h" }
+module cxx03_std_private_charconv_to_chars                [system] { header "__charconv/to_chars.h" }
+module cxx03_std_private_charconv_to_chars_base_10        [system] { header "__charconv/to_chars_base_10.h" }
+module cxx03_std_private_charconv_to_chars_floating_point [system] { header "__charconv/to_chars_floating_point.h" }
+module cxx03_std_private_charconv_to_chars_integral       [system] {
   header "__charconv/to_chars_integral.h"
   export std_private_charconv_traits
 }
-module std_private_charconv_to_chars_result         [system] {
+module cxx03_std_private_charconv_to_chars_result         [system] {
   header "__charconv/to_chars_result.h"
   export *
 }
-module std_private_charconv_traits                  [system] { header "__charconv/traits.h" }
+module cxx03_std_private_charconv_traits                  [system] { header "__charconv/traits.h" }
 
-module std_private_chrono_calendar               [system] { header "__chrono/calendar.h" }
-module std_private_chrono_concepts               [system] { header "__chrono/concepts.h" }
-module std_private_chrono_convert_to_timespec    [system] { header "__chrono/convert_to_timespec.h" }
-module std_private_chrono_convert_to_tm          [system] { header "__chrono/convert_to_tm.h" }
-module std_private_chrono_day                    [system] { header "__chrono/day.h" }
-module std_private_chrono_duration               [system] {
+module cxx03_std_private_chrono_calendar               [system] { header "__chrono/calendar.h" }
+module cxx03_std_private_chrono_concepts               [system] { header "__chrono/concepts.h" }
+module cxx03_std_private_chrono_convert_to_timespec    [system] { header "__chrono/convert_to_timespec.h" }
+module cxx03_std_private_chrono_convert_to_tm          [system] { header "__chrono/convert_to_tm.h" }
+module cxx03_std_private_chrono_day                    [system] { header "__chrono/day.h" }
+module cxx03_std_private_chrono_duration               [system] {
   header "__chrono/duration.h"
   export std_private_type_traits_is_convertible
 }
-module std_private_chrono_exception              [system] { header "__chrono/exception.h" }
-module std_private_chrono_file_clock             [system] { header "__chrono/file_clock.h" }
-module std_private_chrono_formatter              [system] {
+module cxx03_std_private_chrono_exception              [system] { header "__chrono/exception.h" }
+module cxx03_std_private_chrono_file_clock             [system] { header "__chrono/file_clock.h" }
+module cxx03_std_private_chrono_formatter              [system] {
   header "__chrono/formatter.h"
 }
-module std_private_chrono_hh_mm_ss               [system] { header "__chrono/hh_mm_ss.h" }
-module std_private_chrono_high_resolution_clock  [system] {
+module cxx03_std_private_chrono_hh_mm_ss               [system] { header "__chrono/hh_mm_ss.h" }
+module cxx03_std_private_chrono_high_resolution_clock  [system] {
   header "__chrono/high_resolution_clock.h"
   export std_private_chrono_steady_clock
   export std_private_chrono_system_clock
 }
-module std_private_chrono_leap_second            [system] { header "__chrono/leap_second.h" }
-module std_private_chrono_literals               [system] { header "__chrono/literals.h" }
-module std_private_chrono_local_info             [system] {
+module cxx03_std_private_chrono_leap_second            [system] { header "__chrono/leap_second.h" }
+module cxx03_std_private_chrono_literals               [system] { header "__chrono/literals.h" }
+module cxx03_std_private_chrono_local_info             [system] {
   header "__chrono/local_info.h"
   export std_private_chrono_sys_info
 }
-module std_private_chrono_month                  [system] { header "__chrono/month.h" }
-module std_private_chrono_month_weekday          [system] { header "__chrono/month_weekday.h" }
-module std_private_chrono_monthday               [system] { header "__chrono/monthday.h" }
-module std_private_chrono_ostream                [system] {
+module cxx03_std_private_chrono_month                  [system] { header "__chrono/month.h" }
+module cxx03_std_private_chrono_month_weekday          [system] { header "__chrono/month_weekday.h" }
+module cxx03_std_private_chrono_monthday               [system] { header "__chrono/monthday.h" }
+module cxx03_std_private_chrono_ostream                [system] {
   header "__chrono/ostream.h"
 }
-module std_private_chrono_parser_std_format_spec [system] {
+module cxx03_std_private_chrono_parser_std_format_spec [system] {
   header "__chrono/parser_std_format_spec.h"
 }
-module std_private_chrono_statically_widen       [system] { header "__chrono/statically_widen.h" }
-module std_private_chrono_steady_clock           [system] {
+module cxx03_std_private_chrono_statically_widen       [system] { header "__chrono/statically_widen.h" }
+module cxx03_std_private_chrono_steady_clock           [system] {
   header "__chrono/steady_clock.h"
   export std_private_chrono_time_point
 }
-module std_private_chrono_time_zone              [system] {
+module cxx03_std_private_chrono_time_zone              [system] {
   header "__chrono/time_zone.h"
   export std_private_memory_unique_ptr
 }
-module std_private_chrono_time_zone_link         [system] {
+module cxx03_std_private_chrono_time_zone_link         [system] {
   header "__chrono/time_zone_link.h"
 }
-module std_private_chrono_sys_info               [system] {
+module cxx03_std_private_chrono_sys_info               [system] {
   header "__chrono/sys_info.h"
 }
-module std_private_chrono_system_clock           [system] {
+module cxx03_std_private_chrono_system_clock           [system] {
   header "__chrono/system_clock.h"
   export std_private_chrono_time_point
 }
-module std_private_chrono_tzdb                   [system] {
+module cxx03_std_private_chrono_tzdb                   [system] {
   header "__chrono/tzdb.h"
   export *
 }
-module std_private_chrono_tzdb_list              [system] {
+module cxx03_std_private_chrono_tzdb_list              [system] {
   header "__chrono/tzdb_list.h"
   export *
 }
-module std_private_chrono_time_point             [system] { header "__chrono/time_point.h" }
-module std_private_chrono_weekday                [system] { header "__chrono/weekday.h" }
-module std_private_chrono_year                   [system] { header "__chrono/year.h" }
-module std_private_chrono_year_month             [system] { header "__chrono/year_month.h" }
-module std_private_chrono_year_month_day         [system] { header "__chrono/year_month_day.h" }
-module std_private_chrono_year_month_weekday     [system] { header "__chrono/year_month_weekday.h" }
-module std_private_chrono_zoned_time             [system] { header "__chrono/zoned_time.h" }
+module cxx03_std_private_chrono_time_point             [system] { header "__chrono/time_point.h" }
+module cxx03_std_private_chrono_weekday                [system] { header "__chrono/weekday.h" }
+module cxx03_std_private_chrono_year                   [system] { header "__chrono/year.h" }
+module cxx03_std_private_chrono_year_month             [system] { header "__chrono/year_month.h" }
+module cxx03_std_private_chrono_year_month_day         [system] { header "__chrono/year_month_day.h" }
+module cxx03_std_private_chrono_year_month_weekday     [system] { header "__chrono/year_month_weekday.h" }
+module cxx03_std_private_chrono_zoned_time             [system] { header "__chrono/zoned_time.h" }
 
-module std_private_compare_common_comparison_category     [system] { header "__compare/common_comparison_category.h" }
-module std_private_compare_compare_partial_order_fallback [system] { header "__compare/compare_partial_order_fallback.h" }
-module std_private_compare_compare_strong_order_fallback  [system] { header "__compare/compare_strong_order_fallback.h" }
-module std_private_compare_compare_three_way              [system] { header "__compare/compare_three_way.h" }
-module std_private_compare_compare_three_way_result       [system] { header "__compare/compare_three_way_result.h" }
-module std_private_compare_compare_weak_order_fallback    [system] { header "__compare/compare_weak_order_fallback.h" }
-module std_private_compare_is_eq                          [system] { header "__compare/is_eq.h" }
-module std_private_compare_ordering                       [system] { header "__compare/ordering.h" }
-module std_private_compare_partial_order                  [system] { header "__compare/partial_order.h" }
-module std_private_compare_strong_order                   [system] { header "__compare/strong_order.h" }
-module std_private_compare_synth_three_way                [system] { header "__compare/synth_three_way.h" }
-module std_private_compare_three_way_comparable           [system] { header "__compare/three_way_comparable.h" }
-module std_private_compare_weak_order                     [system] { header "__compare/weak_order.h" }
+module cxx03_std_private_compare_common_comparison_category     [system] { header "__compare/common_comparison_category.h" }
+module cxx03_std_private_compare_compare_partial_order_fallback [system] { header "__compare/compare_partial_order_fallback.h" }
+module cxx03_std_private_compare_compare_strong_order_fallback  [system] { header "__compare/compare_strong_order_fallback.h" }
+module cxx03_std_private_compare_compare_three_way              [system] { header "__compare/compare_three_way.h" }
+module cxx03_std_private_compare_compare_three_way_result       [system] { header "__compare/compare_three_way_result.h" }
+module cxx03_std_private_compare_compare_weak_order_fallback    [system] { header "__compare/compare_weak_order_fallback.h" }
+module cxx03_std_private_compare_is_eq                          [system] { header "__compare/is_eq.h" }
+module cxx03_std_private_compare_ordering                       [system] { header "__compare/ordering.h" }
+module cxx03_std_private_compare_partial_order                  [system] { header "__compare/partial_order.h" }
+module cxx03_std_private_compare_strong_order                   [system] { header "__compare/strong_order.h" }
+module cxx03_std_private_compare_synth_three_way                [system] { header "__compare/synth_three_way.h" }
+module cxx03_std_private_compare_three_way_comparable           [system] { header "__compare/three_way_comparable.h" }
+module cxx03_std_private_compare_weak_order                     [system] { header "__compare/weak_order.h" }
 
-module std_private_complex_complex_fwd            [system] { header "__fwd/complex.h" }
+module cxx03_std_private_complex_complex_fwd            [system] { header "__fwd/complex.h" }
 
-module std_private_concepts_arithmetic            [system] { header "__concepts/arithmetic.h" }
-module std_private_concepts_assignable            [system] { header "__concepts/assignable.h" }
-module std_private_concepts_boolean_testable      [system] { header "__concepts/boolean_testable.h" }
-module std_private_concepts_class_or_enum         [system] { header "__concepts/class_or_enum.h" }
-module std_private_concepts_common_reference_with [system] { header "__concepts/common_reference_with.h" }
-module std_private_concepts_common_with           [system] { header "__concepts/common_with.h" }
-module std_private_concepts_constructible         [system] {
+module cxx03_std_private_concepts_arithmetic            [system] { header "__concepts/arithmetic.h" }
+module cxx03_std_private_concepts_assignable            [system] { header "__concepts/assignable.h" }
+module cxx03_std_private_concepts_boolean_testable      [system] { header "__concepts/boolean_testable.h" }
+module cxx03_std_private_concepts_class_or_enum         [system] { header "__concepts/class_or_enum.h" }
+module cxx03_std_private_concepts_common_reference_with [system] { header "__concepts/common_reference_with.h" }
+module cxx03_std_private_concepts_common_with           [system] { header "__concepts/common_with.h" }
+module cxx03_std_private_concepts_constructible         [system] {
   header "__concepts/constructible.h"
   export std_private_concepts_destructible
 }
-module std_private_concepts_convertible_to        [system] { header "__concepts/convertible_to.h" }
-module std_private_concepts_copyable              [system] { header "__concepts/copyable.h" }
-module std_private_concepts_derived_from          [system] { header "__concepts/derived_from.h" }
-module std_private_concepts_destructible          [system] {
+module cxx03_std_private_concepts_convertible_to        [system] { header "__concepts/convertible_to.h" }
+module cxx03_std_private_concepts_copyable              [system] { header "__concepts/copyable.h" }
+module cxx03_std_private_concepts_derived_from          [system] { header "__concepts/derived_from.h" }
+module cxx03_std_private_concepts_destructible          [system] {
   header "__concepts/destructible.h"
   export std_private_type_traits_is_nothrow_destructible
 }
-module std_private_concepts_
diff erent_from        [system] { header "__concepts/
diff erent_from.h" }
-module std_private_concepts_equality_comparable   [system] {
+module cxx03_std_private_concepts_
diff erent_from        [system] { header "__concepts/
diff erent_from.h" }
+module cxx03_std_private_concepts_equality_comparable   [system] {
   header "__concepts/equality_comparable.h"
   export std_private_type_traits_common_reference
 }
-module std_private_concepts_invocable             [system] { header "__concepts/invocable.h" }
-module std_private_concepts_movable               [system] {
+module cxx03_std_private_concepts_invocable             [system] { header "__concepts/invocable.h" }
+module cxx03_std_private_concepts_movable               [system] {
   header "__concepts/movable.h"
   export std_private_type_traits_is_object
 }
-module std_private_concepts_predicate             [system] { header "__concepts/predicate.h" }
-module std_private_concepts_regular               [system] { header "__concepts/regular.h" }
-module std_private_concepts_relation              [system] { header "__concepts/relation.h" }
-module std_private_concepts_same_as               [system] {
+module cxx03_std_private_concepts_predicate             [system] { header "__concepts/predicate.h" }
+module cxx03_std_private_concepts_regular               [system] { header "__concepts/regular.h" }
+module cxx03_std_private_concepts_relation              [system] { header "__concepts/relation.h" }
+module cxx03_std_private_concepts_same_as               [system] {
   header "__concepts/same_as.h"
   export std_private_type_traits_is_same
 }
-module std_private_concepts_semiregular           [system] { header "__concepts/semiregular.h" }
-module std_private_concepts_swappable             [system] { header "__concepts/swappable.h" }
-module std_private_concepts_totally_ordered       [system] { header "__concepts/totally_ordered.h" }
+module cxx03_std_private_concepts_semiregular           [system] { header "__concepts/semiregular.h" }
+module cxx03_std_private_concepts_swappable             [system] { header "__concepts/swappable.h" }
+module cxx03_std_private_concepts_totally_ordered       [system] { header "__concepts/totally_ordered.h" }
 
-module std_private_condition_variable_condition_variable [system] {
+module cxx03_std_private_condition_variable_condition_variable [system] {
   header "__condition_variable/condition_variable.h"
   export *
 }
 
-module std_private_coroutine_coroutine_handle      [system] { header "__coroutine/coroutine_handle.h" }
-module std_private_coroutine_coroutine_traits      [system] { header "__coroutine/coroutine_traits.h" }
-module std_private_coroutine_noop_coroutine_handle [system] { header "__coroutine/noop_coroutine_handle.h" }
-module std_private_coroutine_trivial_awaitables    [system] { header "__coroutine/trivial_awaitables.h" }
+module cxx03_std_private_coroutine_coroutine_handle      [system] { header "__coroutine/coroutine_handle.h" }
+module cxx03_std_private_coroutine_coroutine_traits      [system] { header "__coroutine/coroutine_traits.h" }
+module cxx03_std_private_coroutine_noop_coroutine_handle [system] { header "__coroutine/noop_coroutine_handle.h" }
+module cxx03_std_private_coroutine_trivial_awaitables    [system] { header "__coroutine/trivial_awaitables.h" }
 
-module std_private_debug_utils_randomize_range            [system] { header "__debug_utils/randomize_range.h" }
-module std_private_debug_utils_sanitizers                 [system] { header "__debug_utils/sanitizers.h" }
-module std_private_debug_utils_strict_weak_ordering_check [system] {
+module cxx03_std_private_debug_utils_randomize_range            [system] { header "__debug_utils/randomize_range.h" }
+module cxx03_std_private_debug_utils_sanitizers                 [system] { header "__debug_utils/sanitizers.h" }
+module cxx03_std_private_debug_utils_strict_weak_ordering_check [system] {
   header "__debug_utils/strict_weak_ordering_check.h"
   export std_private_type_traits_is_constant_evaluated
 }
 
-module std_private_deque_fwd [system] { header "__fwd/deque.h" }
+module cxx03_std_private_deque_fwd [system] { header "__fwd/deque.h" }
 
-module std_private_exception_exception        [system] { header "__exception/exception.h" }
-module std_private_exception_exception_ptr    [system] {
+module cxx03_std_private_exception_exception        [system] { header "__exception/exception.h" }
+module cxx03_std_private_exception_exception_ptr    [system] {
   header "__exception/exception_ptr.h"
   export std_private_exception_operations
 }
-module std_private_exception_nested_exception [system] { header "__exception/nested_exception.h" }
-module std_private_exception_operations       [system] { header "__exception/operations.h" }
-module std_private_exception_terminate        [system] { header "__exception/terminate.h" }
+module cxx03_std_private_exception_nested_exception [system] { header "__exception/nested_exception.h" }
+module cxx03_std_private_exception_operations       [system] { header "__exception/operations.h" }
+module cxx03_std_private_exception_terminate        [system] { header "__exception/terminate.h" }
 
-module std_private_expected_bad_expected_access [system] { header "__expected/bad_expected_access.h" }
-module std_private_expected_expected            [system] { header "__expected/expected.h" }
-module std_private_expected_unexpect            [system] { header "__expected/unexpect.h" }
-module std_private_expected_unexpected          [system] { header "__expected/unexpected.h" }
+module cxx03_std_private_expected_bad_expected_access [system] { header "__expected/bad_expected_access.h" }
+module cxx03_std_private_expected_expected            [system] { header "__expected/expected.h" }
+module cxx03_std_private_expected_unexpect            [system] { header "__expected/unexpect.h" }
+module cxx03_std_private_expected_unexpected          [system] { header "__expected/unexpected.h" }
 
-module std_private_filesystem_copy_options                 [system] { header "__filesystem/copy_options.h" }
-module std_private_filesystem_directory_entry              [system] {
+module cxx03_std_private_filesystem_copy_options                 [system] { header "__filesystem/copy_options.h" }
+module cxx03_std_private_filesystem_directory_entry              [system] {
   header "__filesystem/directory_entry.h"
   export *
 }
-module std_private_filesystem_directory_iterator           [system] {
+module cxx03_std_private_filesystem_directory_iterator           [system] {
   header "__filesystem/directory_iterator.h"
   export *
 }
-module std_private_filesystem_directory_options            [system] { header "__filesystem/directory_options.h" }
-module std_private_filesystem_file_status                  [system] { header "__filesystem/file_status.h" }
-module std_private_filesystem_file_time_type               [system] { header "__filesystem/file_time_type.h" }
-module std_private_filesystem_file_type                    [system] { header "__filesystem/file_type.h" }
-module std_private_filesystem_filesystem_error             [system] {
+module cxx03_std_private_filesystem_directory_options            [system] { header "__filesystem/directory_options.h" }
+module cxx03_std_private_filesystem_file_status                  [system] { header "__filesystem/file_status.h" }
+module cxx03_std_private_filesystem_file_time_type               [system] { header "__filesystem/file_time_type.h" }
+module cxx03_std_private_filesystem_file_type                    [system] { header "__filesystem/file_type.h" }
+module cxx03_std_private_filesystem_filesystem_error             [system] {
   header "__filesystem/filesystem_error.h"
   export *
 }
-module std_private_filesystem_operations                   [system] { header "__filesystem/operations.h" }
-module std_private_filesystem_path                         [system] {
+module cxx03_std_private_filesystem_operations                   [system] { header "__filesystem/operations.h" }
+module cxx03_std_private_filesystem_path                         [system] {
   header "__filesystem/path.h"
   export *
 }
-module std_private_filesystem_path_iterator                [system] { header "__filesystem/path_iterator.h" }
-module std_private_filesystem_perm_options                 [system] { header "__filesystem/perm_options.h" }
-module std_private_filesystem_perms                        [system] { header "__filesystem/perms.h" }
-module std_private_filesystem_recursive_directory_iterator [system] {
+module cxx03_std_private_filesystem_path_iterator                [system] { header "__filesystem/path_iterator.h" }
+module cxx03_std_private_filesystem_perm_options                 [system] { header "__filesystem/perm_options.h" }
+module cxx03_std_private_filesystem_perms                        [system] { header "__filesystem/perms.h" }
+module cxx03_std_private_filesystem_recursive_directory_iterator [system] {
   header "__filesystem/recursive_directory_iterator.h"
   export *
 }
-module std_private_filesystem_space_info                   [system] { header "__filesystem/space_info.h" }
-module std_private_filesystem_u8path                       [system] { header "__filesystem/u8path.h" }
+module cxx03_std_private_filesystem_space_info                   [system] { header "__filesystem/space_info.h" }
+module cxx03_std_private_filesystem_u8path                       [system] { header "__filesystem/u8path.h" }
 
-module std_private_format_buffer                          [system] { header "__format/buffer.h" }
-module std_private_format_concepts                        [system] { header "__format/concepts.h" }
-module std_private_format_container_adaptor               [system] { header "__format/container_adaptor.h" }
-module std_private_format_enable_insertable               [system] { header "__format/enable_insertable.h" }
-module std_private_format_escaped_output_table            [system] { header "__format/escaped_output_table.h" }
-module std_private_format_extended_grapheme_cluster_table [system] { header "__format/extended_grapheme_cluster_table.h" }
-module std_private_format_format_arg                      [system] { header "__format/format_arg.h" }
-module std_private_format_format_arg_store                [system] { header "__format/format_arg_store.h" }
-module std_private_format_format_args                     [system] { header "__format/format_args.h" }
-module std_private_format_format_context                  [system] {
+module cxx03_std_private_format_buffer                          [system] { header "__format/buffer.h" }
+module cxx03_std_private_format_concepts                        [system] { header "__format/concepts.h" }
+module cxx03_std_private_format_container_adaptor               [system] { header "__format/container_adaptor.h" }
+module cxx03_std_private_format_enable_insertable               [system] { header "__format/enable_insertable.h" }
+module cxx03_std_private_format_escaped_output_table            [system] { header "__format/escaped_output_table.h" }
+module cxx03_std_private_format_extended_grapheme_cluster_table [system] { header "__format/extended_grapheme_cluster_table.h" }
+module cxx03_std_private_format_format_arg                      [system] { header "__format/format_arg.h" }
+module cxx03_std_private_format_format_arg_store                [system] { header "__format/format_arg_store.h" }
+module cxx03_std_private_format_format_args                     [system] { header "__format/format_args.h" }
+module cxx03_std_private_format_format_context                  [system] {
   header "__format/format_context.h"
   export *
 }
-module std_private_format_format_error                    [system] { header "__format/format_error.h" }
-module std_private_format_format_functions                [system] {
+module cxx03_std_private_format_format_error                    [system] { header "__format/format_error.h" }
+module cxx03_std_private_format_format_functions                [system] {
   header "__format/format_functions.h"
   export std_string
 }
-module std_private_format_fwd                             [system] { header "__fwd/format.h" }
-module std_private_format_format_parse_context            [system] { header "__format/format_parse_context.h" }
-module std_private_format_format_string                   [system] { header "__format/format_string.h" }
-module std_private_format_format_to_n_result              [system] {
+module cxx03_std_private_format_fwd                             [system] { header "__fwd/format.h" }
+module cxx03_std_private_format_format_parse_context            [system] { header "__format/format_parse_context.h" }
+module cxx03_std_private_format_format_string                   [system] { header "__format/format_string.h" }
+module cxx03_std_private_format_format_to_n_result              [system] {
   header "__format/format_to_n_result.h"
   export std_private_iterator_incrementable_traits
 }
-module std_private_format_formatter                       [system] { header "__format/formatter.h" }
-module std_private_format_formatter_bool                  [system] { header "__format/formatter_bool.h" }
-module std_private_format_formatter_char                  [system] { header "__format/formatter_char.h" }
-module std_private_format_formatter_floating_point        [system] { header "__format/formatter_floating_point.h" }
-module std_private_format_formatter_integer               [system] { header "__format/formatter_integer.h" }
-module std_private_format_formatter_integral              [system] { header "__format/formatter_integral.h" }
-module std_private_format_formatter_output                [system] { header "__format/formatter_output.h" }
-module std_private_format_formatter_pointer               [system] { header "__format/formatter_pointer.h" }
-module std_private_format_formatter_string                [system] { header "__format/formatter_string.h" }
-module std_private_format_formatter_tuple                 [system] { header "__format/formatter_tuple.h" }
-module std_private_format_indic_conjunct_break_table      [system] { header "__format/indic_conjunct_break_table.h" }
-module std_private_format_parser_std_format_spec          [system] { header "__format/parser_std_format_spec.h" }
-module std_private_format_range_default_formatter         [system] { header "__format/range_default_formatter.h" }
-module std_private_format_range_formatter                 [system] { header "__format/range_formatter.h" }
-module std_private_format_unicode                         [system] {
+module cxx03_std_private_format_formatter                       [system] { header "__format/formatter.h" }
+module cxx03_std_private_format_formatter_bool                  [system] { header "__format/formatter_bool.h" }
+module cxx03_std_private_format_formatter_char                  [system] { header "__format/formatter_char.h" }
+module cxx03_std_private_format_formatter_floating_point        [system] { header "__format/formatter_floating_point.h" }
+module cxx03_std_private_format_formatter_integer               [system] { header "__format/formatter_integer.h" }
+module cxx03_std_private_format_formatter_integral              [system] { header "__format/formatter_integral.h" }
+module cxx03_std_private_format_formatter_output                [system] { header "__format/formatter_output.h" }
+module cxx03_std_private_format_formatter_pointer               [system] { header "__format/formatter_pointer.h" }
+module cxx03_std_private_format_formatter_string                [system] { header "__format/formatter_string.h" }
+module cxx03_std_private_format_formatter_tuple                 [system] { header "__format/formatter_tuple.h" }
+module cxx03_std_private_format_indic_conjunct_break_table      [system] { header "__format/indic_conjunct_break_table.h" }
+module cxx03_std_private_format_parser_std_format_spec          [system] { header "__format/parser_std_format_spec.h" }
+module cxx03_std_private_format_range_default_formatter         [system] { header "__format/range_default_formatter.h" }
+module cxx03_std_private_format_range_formatter                 [system] { header "__format/range_formatter.h" }
+module cxx03_std_private_format_unicode                         [system] {
   header "__format/unicode.h"
   export std_private_format_extended_grapheme_cluster_table
   export std_private_format_indic_conjunct_break_table
 }
-module std_private_format_width_estimation_table          [system] { header "__format/width_estimation_table.h" }
-module std_private_format_write_escaped                   [system] { header "__format/write_escaped.h" }
+module cxx03_std_private_format_width_estimation_table          [system] { header "__format/width_estimation_table.h" }
+module cxx03_std_private_format_write_escaped                   [system] { header "__format/write_escaped.h" }
 
-module std_private_functional_binary_function            [system] { header "__functional/binary_function.h" }
-module std_private_functional_binary_negate              [system] { header "__functional/binary_negate.h" }
-module std_private_functional_bind                       [system] { header "__functional/bind.h" }
-module std_private_functional_bind_back                  [system] { header "__functional/bind_back.h" }
-module std_private_functional_bind_front                 [system] { header "__functional/bind_front.h" }
-module std_private_functional_binder1st                  [system] { header "__functional/binder1st.h" }
-module std_private_functional_binder2nd                  [system] { header "__functional/binder2nd.h" }
-module std_private_functional_boyer_moore_searcher       [system] {
+module cxx03_std_private_functional_binary_function            [system] { header "__functional/binary_function.h" }
+module cxx03_std_private_functional_binary_negate              [system] { header "__functional/binary_negate.h" }
+module cxx03_std_private_functional_bind                       [system] { header "__functional/bind.h" }
+module cxx03_std_private_functional_bind_back                  [system] { header "__functional/bind_back.h" }
+module cxx03_std_private_functional_bind_front                 [system] { header "__functional/bind_front.h" }
+module cxx03_std_private_functional_binder1st                  [system] { header "__functional/binder1st.h" }
+module cxx03_std_private_functional_binder2nd                  [system] { header "__functional/binder2nd.h" }
+module cxx03_std_private_functional_boyer_moore_searcher       [system] {
   header "__functional/boyer_moore_searcher.h"
   export std_private_memory_shared_ptr
 }
-module std_private_functional_compose                    [system] {
+module cxx03_std_private_functional_compose                    [system] {
   header "__functional/compose.h"
   export std_private_functional_perfect_forward
 }
-module std_private_functional_default_searcher           [system] { header "__functional/default_searcher.h" }
-module std_private_functional_function                   [system] { header "__functional/function.h" }
-module std_private_functional_hash                       [system] {
+module cxx03_std_private_functional_default_searcher           [system] { header "__functional/default_searcher.h" }
+module cxx03_std_private_functional_function                   [system] { header "__functional/function.h" }
+module cxx03_std_private_functional_hash                       [system] {
   header "__functional/hash.h"
   export std_cstdint
   export std_private_type_traits_underlying_type
   export std_private_utility_pair
 }
-module std_private_functional_fwd                        [system] { header "__fwd/functional.h" }
-module std_private_functional_identity                   [system] { header "__functional/identity.h" }
-module std_private_functional_invoke                     [system] {
+module cxx03_std_private_functional_fwd                        [system] { header "__fwd/functional.h" }
+module cxx03_std_private_functional_identity                   [system] { header "__functional/identity.h" }
+module cxx03_std_private_functional_invoke                     [system] {
   header "__functional/invoke.h"
   export *
 }
-module std_private_functional_is_transparent             [system] { header "__functional/is_transparent.h" }
-module std_private_functional_mem_fn                     [system] { header "__functional/mem_fn.h" }
-module std_private_functional_mem_fun_ref                [system] { header "__functional/mem_fun_ref.h" }
-module std_private_functional_not_fn                     [system] {
+module cxx03_std_private_functional_is_transparent             [system] { header "__functional/is_transparent.h" }
+module cxx03_std_private_functional_mem_fn                     [system] { header "__functional/mem_fn.h" }
+module cxx03_std_private_functional_mem_fun_ref                [system] { header "__functional/mem_fun_ref.h" }
+module cxx03_std_private_functional_not_fn                     [system] {
   header "__functional/not_fn.h"
   export std_private_functional_perfect_forward
 }
-module std_private_functional_operations                 [system] { header "__functional/operations.h" }
-module std_private_functional_perfect_forward            [system] {
+module cxx03_std_private_functional_operations                 [system] { header "__functional/operations.h" }
+module cxx03_std_private_functional_perfect_forward            [system] {
   header "__functional/perfect_forward.h"
   export *
 }
-module std_private_functional_pointer_to_binary_function [system] { header "__functional/pointer_to_binary_function.h" }
-module std_private_functional_pointer_to_unary_function  [system] { header "__functional/pointer_to_unary_function.h" }
-module std_private_functional_ranges_operations          [system] { header "__functional/ranges_operations.h" }
-module std_private_functional_reference_wrapper          [system] { header "__functional/reference_wrapper.h" }
-module std_private_functional_unary_function             [system] { header "__functional/unary_function.h" }
-module std_private_functional_unary_negate               [system] { header "__functional/unary_negate.h" }
-module std_private_functional_weak_result_type           [system] { header "__functional/weak_result_type.h" }
+module cxx03_std_private_functional_pointer_to_binary_function [system] { header "__functional/pointer_to_binary_function.h" }
+module cxx03_std_private_functional_pointer_to_unary_function  [system] { header "__functional/pointer_to_unary_function.h" }
+module cxx03_std_private_functional_ranges_operations          [system] { header "__functional/ranges_operations.h" }
+module cxx03_std_private_functional_reference_wrapper          [system] { header "__functional/reference_wrapper.h" }
+module cxx03_std_private_functional_unary_function             [system] { header "__functional/unary_function.h" }
+module cxx03_std_private_functional_unary_negate               [system] { header "__functional/unary_negate.h" }
+module cxx03_std_private_functional_weak_result_type           [system] { header "__functional/weak_result_type.h" }
 
-module std_private_ios_fpos [system] { header "__ios/fpos.h" }
+module cxx03_std_private_ios_fpos [system] { header "__ios/fpos.h" }
 
-module std_private_iosfwd_fstream_fwd   [system] { header "__fwd/fstream.h" }
-module std_private_iosfwd_ios_fwd       [system] { header "__fwd/ios.h" }
-module std_private_iosfwd_istream_fwd   [system] { header "__fwd/istream.h" }
-module std_private_iosfwd_ostream_fwd   [system] { header "__fwd/ostream.h" }
-module std_private_iosfwd_sstream_fwd   [system] { header "__fwd/sstream.h" }
-module std_private_iosfwd_streambuf_fwd [system] { header "__fwd/streambuf.h" }
+module cxx03_std_private_iosfwd_fstream_fwd   [system] { header "__fwd/fstream.h" }
+module cxx03_std_private_iosfwd_ios_fwd       [system] { header "__fwd/ios.h" }
+module cxx03_std_private_iosfwd_istream_fwd   [system] { header "__fwd/istream.h" }
+module cxx03_std_private_iosfwd_ostream_fwd   [system] { header "__fwd/ostream.h" }
+module cxx03_std_private_iosfwd_sstream_fwd   [system] { header "__fwd/sstream.h" }
+module cxx03_std_private_iosfwd_streambuf_fwd [system] { header "__fwd/streambuf.h" }
 
-module std_private_iterator_access                  [system] { header "__iterator/access.h" }
-module std_private_iterator_advance                 [system] { header "__iterator/advance.h" }
-module std_private_iterator_aliasing_iterator       [system] { header "__iterator/aliasing_iterator.h" }
-module std_private_iterator_back_insert_iterator    [system] { header "__iterator/back_insert_iterator.h" }
-module std_private_iterator_bounded_iter            [system] { header "__iterator/bounded_iter.h" }
-module std_private_iterator_common_iterator         [system] { header "__iterator/common_iterator.h" }
-module std_private_iterator_concepts                [system] {
+module cxx03_std_private_iterator_access                  [system] { header "__iterator/access.h" }
+module cxx03_std_private_iterator_advance                 [system] { header "__iterator/advance.h" }
+module cxx03_std_private_iterator_aliasing_iterator       [system] { header "__iterator/aliasing_iterator.h" }
+module cxx03_std_private_iterator_back_insert_iterator    [system] { header "__iterator/back_insert_iterator.h" }
+module cxx03_std_private_iterator_bounded_iter            [system] { header "__iterator/bounded_iter.h" }
+module cxx03_std_private_iterator_common_iterator         [system] { header "__iterator/common_iterator.h" }
+module cxx03_std_private_iterator_concepts                [system] {
   header "__iterator/concepts.h"
   export std_private_concepts_constructible
   export std_private_concepts_equality_comparable
@@ -1401,509 +1401,509 @@ module std_private_iterator_concepts                [system] {
   export std_private_type_traits_is_reference
   export std_private_type_traits_remove_cvref
 }
-module std_private_iterator_counted_iterator        [system] { header "__iterator/counted_iterator.h" }
-module std_private_iterator_cpp17_iterator_concepts [system] { header "__iterator/cpp17_iterator_concepts.h" }
-module std_private_iterator_data                    [system] { header "__iterator/data.h" }
-module std_private_iterator_default_sentinel        [system] { header "__iterator/default_sentinel.h" }
-module std_private_iterator_distance                [system] {
+module cxx03_std_private_iterator_counted_iterator        [system] { header "__iterator/counted_iterator.h" }
+module cxx03_std_private_iterator_cpp17_iterator_concepts [system] { header "__iterator/cpp17_iterator_concepts.h" }
+module cxx03_std_private_iterator_data                    [system] { header "__iterator/data.h" }
+module cxx03_std_private_iterator_default_sentinel        [system] { header "__iterator/default_sentinel.h" }
+module cxx03_std_private_iterator_distance                [system] {
   header "__iterator/distance.h"
   export std_private_ranges_size
 }
-module std_private_iterator_empty                   [system] { header "__iterator/empty.h" }
-module std_private_iterator_erase_if_container      [system] { header "__iterator/erase_if_container.h" }
-module std_private_iterator_front_insert_iterator   [system] { header "__iterator/front_insert_iterator.h" }
-module std_private_iterator_incrementable_traits    [system] { header "__iterator/incrementable_traits.h" }
-module std_private_iterator_indirectly_comparable   [system] { header "__iterator/indirectly_comparable.h" }
-module std_private_iterator_insert_iterator         [system] { header "__iterator/insert_iterator.h" }
-module std_private_iterator_istream_iterator        [system] { header "__iterator/istream_iterator.h" }
-module std_private_iterator_istreambuf_iterator     [system] { header "__iterator/istreambuf_iterator.h" }
-module std_private_iterator_iter_move               [system] { header "__iterator/iter_move.h" }
-module std_private_iterator_iter_swap               [system] { header "__iterator/iter_swap.h" }
-module std_private_iterator_iterator                [system] { header "__iterator/iterator.h" }
-module std_private_iterator_iterator_traits         [system] {
+module cxx03_std_private_iterator_empty                   [system] { header "__iterator/empty.h" }
+module cxx03_std_private_iterator_erase_if_container      [system] { header "__iterator/erase_if_container.h" }
+module cxx03_std_private_iterator_front_insert_iterator   [system] { header "__iterator/front_insert_iterator.h" }
+module cxx03_std_private_iterator_incrementable_traits    [system] { header "__iterator/incrementable_traits.h" }
+module cxx03_std_private_iterator_indirectly_comparable   [system] { header "__iterator/indirectly_comparable.h" }
+module cxx03_std_private_iterator_insert_iterator         [system] { header "__iterator/insert_iterator.h" }
+module cxx03_std_private_iterator_istream_iterator        [system] { header "__iterator/istream_iterator.h" }
+module cxx03_std_private_iterator_istreambuf_iterator     [system] { header "__iterator/istreambuf_iterator.h" }
+module cxx03_std_private_iterator_iter_move               [system] { header "__iterator/iter_move.h" }
+module cxx03_std_private_iterator_iter_swap               [system] { header "__iterator/iter_swap.h" }
+module cxx03_std_private_iterator_iterator                [system] { header "__iterator/iterator.h" }
+module cxx03_std_private_iterator_iterator_traits         [system] {
   header "__iterator/iterator_traits.h"
   export std_private_type_traits_is_primary_template
 }
-module std_private_iterator_iterator_with_data      [system] { header "__iterator/iterator_with_data.h" }
-module std_private_iterator_mergeable               [system] {
+module cxx03_std_private_iterator_iterator_with_data      [system] { header "__iterator/iterator_with_data.h" }
+module cxx03_std_private_iterator_mergeable               [system] {
   header "__iterator/mergeable.h"
   export std_private_functional_ranges_operations
 }
-module std_private_iterator_move_iterator           [system] { header "__iterator/move_iterator.h" }
-module std_private_iterator_move_sentinel           [system] { header "__iterator/move_sentinel.h" }
-module std_private_iterator_next                    [system] { header "__iterator/next.h" }
-module std_private_iterator_ostream_iterator        [system] { header "__iterator/ostream_iterator.h" }
-module std_private_iterator_ostreambuf_iterator     [system] {
+module cxx03_std_private_iterator_move_iterator           [system] { header "__iterator/move_iterator.h" }
+module cxx03_std_private_iterator_move_sentinel           [system] { header "__iterator/move_sentinel.h" }
+module cxx03_std_private_iterator_next                    [system] { header "__iterator/next.h" }
+module cxx03_std_private_iterator_ostream_iterator        [system] { header "__iterator/ostream_iterator.h" }
+module cxx03_std_private_iterator_ostreambuf_iterator     [system] {
   header "__iterator/ostreambuf_iterator.h"
   export *
 }
-module std_private_iterator_permutable              [system] { header "__iterator/permutable.h" }
-module std_private_iterator_prev                    [system] { header "__iterator/prev.h" }
-module std_private_iterator_projected               [system] { header "__iterator/projected.h" }
-module std_private_iterator_ranges_iterator_traits  [system] { header "__iterator/ranges_iterator_traits.h" }
-module std_private_iterator_readable_traits         [system] { header "__iterator/readable_traits.h" }
-module std_private_iterator_reverse_access          [system] { header "__iterator/reverse_access.h" }
-module std_private_iterator_reverse_iterator        [system] { header "__iterator/reverse_iterator.h" }
-module std_private_iterator_segmented_iterator      [system] { header "__iterator/segmented_iterator.h" }
-module std_private_iterator_size                    [system] { header "__iterator/size.h" }
-module std_private_iterator_sortable                [system] {
+module cxx03_std_private_iterator_permutable              [system] { header "__iterator/permutable.h" }
+module cxx03_std_private_iterator_prev                    [system] { header "__iterator/prev.h" }
+module cxx03_std_private_iterator_projected               [system] { header "__iterator/projected.h" }
+module cxx03_std_private_iterator_ranges_iterator_traits  [system] { header "__iterator/ranges_iterator_traits.h" }
+module cxx03_std_private_iterator_readable_traits         [system] { header "__iterator/readable_traits.h" }
+module cxx03_std_private_iterator_reverse_access          [system] { header "__iterator/reverse_access.h" }
+module cxx03_std_private_iterator_reverse_iterator        [system] { header "__iterator/reverse_iterator.h" }
+module cxx03_std_private_iterator_segmented_iterator      [system] { header "__iterator/segmented_iterator.h" }
+module cxx03_std_private_iterator_size                    [system] { header "__iterator/size.h" }
+module cxx03_std_private_iterator_sortable                [system] {
   header "__iterator/sortable.h"
   export std_private_functional_ranges_operations
 }
-module std_private_iterator_unreachable_sentinel    [system] { header "__iterator/unreachable_sentinel.h" }
-module std_private_iterator_wrap_iter               [system] { header "__iterator/wrap_iter.h" }
+module cxx03_std_private_iterator_unreachable_sentinel    [system] { header "__iterator/unreachable_sentinel.h" }
+module cxx03_std_private_iterator_wrap_iter               [system] { header "__iterator/wrap_iter.h" }
 
-module std_private_locale_locale_base_api_android              [system] { textual header "__locale_dir/locale_base_api/android.h" }
-module std_private_locale_locale_base_api_bsd_locale_defaults  [system] { textual header "__locale_dir/locale_base_api/bsd_locale_defaults.h" }
-module std_private_locale_locale_base_api_bsd_locale_fallbacks [system] { textual header "__locale_dir/locale_base_api/bsd_locale_fallbacks.h" }
-module std_private_locale_locale_base_api_fuchsia              [system] { textual header "__locale_dir/locale_base_api/fuchsia.h" }
-module std_private_locale_locale_base_api_ibm                  [system] { textual header "__locale_dir/locale_base_api/ibm.h" }
-module std_private_locale_locale_base_api_locale_guard         [system] { header "__locale_dir/locale_base_api/locale_guard.h" }
-module std_private_locale_locale_base_api_musl                 [system] { textual header "__locale_dir/locale_base_api/musl.h" }
-module std_private_locale_locale_base_api_newlib               [system] { textual header "__locale_dir/locale_base_api/newlib.h" }
-module std_private_locale_locale_base_api_openbsd              [system] { textual header "__locale_dir/locale_base_api/openbsd.h" }
-module std_private_locale_locale_base_api_win32                [system] { textual header "__locale_dir/locale_base_api/win32.h" }
-module std_private_locale_locale_base_api                      [system] {
+module cxx03_std_private_locale_locale_base_api_android              [system] { textual header "__locale_dir/locale_base_api/android.h" }
+module cxx03_std_private_locale_locale_base_api_bsd_locale_defaults  [system] { textual header "__locale_dir/locale_base_api/bsd_locale_defaults.h" }
+module cxx03_std_private_locale_locale_base_api_bsd_locale_fallbacks [system] { textual header "__locale_dir/locale_base_api/bsd_locale_fallbacks.h" }
+module cxx03_std_private_locale_locale_base_api_fuchsia              [system] { textual header "__locale_dir/locale_base_api/fuchsia.h" }
+module cxx03_std_private_locale_locale_base_api_ibm                  [system] { textual header "__locale_dir/locale_base_api/ibm.h" }
+module cxx03_std_private_locale_locale_base_api_locale_guard         [system] { header "__locale_dir/locale_base_api/locale_guard.h" }
+module cxx03_std_private_locale_locale_base_api_musl                 [system] { textual header "__locale_dir/locale_base_api/musl.h" }
+module cxx03_std_private_locale_locale_base_api_newlib               [system] { textual header "__locale_dir/locale_base_api/newlib.h" }
+module cxx03_std_private_locale_locale_base_api_openbsd              [system] { textual header "__locale_dir/locale_base_api/openbsd.h" }
+module cxx03_std_private_locale_locale_base_api_win32                [system] { textual header "__locale_dir/locale_base_api/win32.h" }
+module cxx03_std_private_locale_locale_base_api                      [system] {
   header "__locale_dir/locale_base_api.h"
   export *
 }
 
-module std_private_math_abs                             [system] { header "__math/abs.h" }
-module std_private_math_copysign                        [system] { header "__math/copysign.h" }
-module std_private_math_error_functions                 [system] { header "__math/error_functions.h" }
-module std_private_math_exponential_functions           [system] { header "__math/exponential_functions.h" }
-module std_private_math_fdim                            [system] { header "__math/fdim.h" }
-module std_private_math_fma                             [system] { header "__math/fma.h" }
-module std_private_math_gamma                           [system] { header "__math/gamma.h" }
-module std_private_math_hyperbolic_functions            [system] { header "__math/hyperbolic_functions.h" }
-module std_private_math_hypot                           [system] { header "__math/hypot.h" }
-module std_private_math_inverse_hyperbolic_functions    [system] { header "__math/inverse_hyperbolic_functions.h" }
-module std_private_math_inverse_trigonometric_functions [system] { header "__math/inverse_trigonometric_functions.h" }
-module std_private_math_logarithms                      [system] { header "__math/logarithms.h" }
-module std_private_math_min_max                         [system] { header "__math/min_max.h" }
-module std_private_math_modulo                          [system] { header "__math/modulo.h" }
-module std_private_math_remainder                       [system] { header "__math/remainder.h" }
-module std_private_math_roots                           [system] { header "__math/roots.h" }
-module std_private_math_rounding_functions              [system] { header "__math/rounding_functions.h" }
-module std_private_math_special_functions               [system] { header "__math/special_functions.h" }
-module std_private_math_traits                          [system] { header "__math/traits.h" }
-module std_private_math_trigonometric_functions         [system] { header "__math/trigonometric_functions.h" }
+module cxx03_std_private_math_abs                             [system] { header "__math/abs.h" }
+module cxx03_std_private_math_copysign                        [system] { header "__math/copysign.h" }
+module cxx03_std_private_math_error_functions                 [system] { header "__math/error_functions.h" }
+module cxx03_std_private_math_exponential_functions           [system] { header "__math/exponential_functions.h" }
+module cxx03_std_private_math_fdim                            [system] { header "__math/fdim.h" }
+module cxx03_std_private_math_fma                             [system] { header "__math/fma.h" }
+module cxx03_std_private_math_gamma                           [system] { header "__math/gamma.h" }
+module cxx03_std_private_math_hyperbolic_functions            [system] { header "__math/hyperbolic_functions.h" }
+module cxx03_std_private_math_hypot                           [system] { header "__math/hypot.h" }
+module cxx03_std_private_math_inverse_hyperbolic_functions    [system] { header "__math/inverse_hyperbolic_functions.h" }
+module cxx03_std_private_math_inverse_trigonometric_functions [system] { header "__math/inverse_trigonometric_functions.h" }
+module cxx03_std_private_math_logarithms                      [system] { header "__math/logarithms.h" }
+module cxx03_std_private_math_min_max                         [system] { header "__math/min_max.h" }
+module cxx03_std_private_math_modulo                          [system] { header "__math/modulo.h" }
+module cxx03_std_private_math_remainder                       [system] { header "__math/remainder.h" }
+module cxx03_std_private_math_roots                           [system] { header "__math/roots.h" }
+module cxx03_std_private_math_rounding_functions              [system] { header "__math/rounding_functions.h" }
+module cxx03_std_private_math_special_functions               [system] { header "__math/special_functions.h" }
+module cxx03_std_private_math_traits                          [system] { header "__math/traits.h" }
+module cxx03_std_private_math_trigonometric_functions         [system] { header "__math/trigonometric_functions.h" }
 
-module std_private_mdspan_default_accessor [system] { header "__mdspan/default_accessor.h" }
-module std_private_mdspan_extents          [system] {
+module cxx03_std_private_mdspan_default_accessor [system] { header "__mdspan/default_accessor.h" }
+module cxx03_std_private_mdspan_extents          [system] {
   header "__mdspan/extents.h"
   export *
 }
-module std_private_mdspan_layout_left      [system] { header "__mdspan/layout_left.h" }
-module std_private_mdspan_layout_right     [system] { header "__mdspan/layout_right.h" }
-module std_private_mdspan_layout_stride    [system] { header "__mdspan/layout_stride.h" }
-module std_private_mdspan_mdspan           [system] { header "__mdspan/mdspan.h" }
-module std_private_mdspan_mdspan_fwd       [system] { header "__fwd/mdspan.h" }
+module cxx03_std_private_mdspan_layout_left      [system] { header "__mdspan/layout_left.h" }
+module cxx03_std_private_mdspan_layout_right     [system] { header "__mdspan/layout_right.h" }
+module cxx03_std_private_mdspan_layout_stride    [system] { header "__mdspan/layout_stride.h" }
+module cxx03_std_private_mdspan_mdspan           [system] { header "__mdspan/mdspan.h" }
+module cxx03_std_private_mdspan_mdspan_fwd       [system] { header "__fwd/mdspan.h" }
 
-module std_private_memory_addressof                       [system] { header "__memory/addressof.h" }
-module std_private_memory_align                           [system] { header "__memory/align.h" }
-module std_private_memory_aligned_alloc                   [system] { header "__memory/aligned_alloc.h" }
-module std_private_memory_allocate_at_least               [system] { header "__memory/allocate_at_least.h" }
-module std_private_memory_allocation_guard                [system] { header "__memory/allocation_guard.h" }
-module std_private_memory_allocator                       [system] { header "__memory/allocator.h" }
-module std_private_memory_allocator_arg_t                 [system] { header "__memory/allocator_arg_t.h" }
-module std_private_memory_allocator_destructor            [system] { header "__memory/allocator_destructor.h" }
-module std_private_memory_allocator_traits                [system] { header "__memory/allocator_traits.h" }
-module std_private_memory_assume_aligned                  [system] { header "__memory/assume_aligned.h" }
-module std_private_memory_auto_ptr                        [system] { header "__memory/auto_ptr.h" }
-module std_private_memory_builtin_new_allocator           [system] {
+module cxx03_std_private_memory_addressof                       [system] { header "__memory/addressof.h" }
+module cxx03_std_private_memory_align                           [system] { header "__memory/align.h" }
+module cxx03_std_private_memory_aligned_alloc                   [system] { header "__memory/aligned_alloc.h" }
+module cxx03_std_private_memory_allocate_at_least               [system] { header "__memory/allocate_at_least.h" }
+module cxx03_std_private_memory_allocation_guard                [system] { header "__memory/allocation_guard.h" }
+module cxx03_std_private_memory_allocator                       [system] { header "__memory/allocator.h" }
+module cxx03_std_private_memory_allocator_arg_t                 [system] { header "__memory/allocator_arg_t.h" }
+module cxx03_std_private_memory_allocator_destructor            [system] { header "__memory/allocator_destructor.h" }
+module cxx03_std_private_memory_allocator_traits                [system] { header "__memory/allocator_traits.h" }
+module cxx03_std_private_memory_assume_aligned                  [system] { header "__memory/assume_aligned.h" }
+module cxx03_std_private_memory_auto_ptr                        [system] { header "__memory/auto_ptr.h" }
+module cxx03_std_private_memory_builtin_new_allocator           [system] {
   header "__memory/builtin_new_allocator.h"
   export *
 }
-module std_private_memory_compressed_pair                 [system] { header "__memory/compressed_pair.h" }
-module std_private_memory_concepts                        [system] {
+module cxx03_std_private_memory_compressed_pair                 [system] { header "__memory/compressed_pair.h" }
+module cxx03_std_private_memory_concepts                        [system] {
   header "__memory/concepts.h"
   export std_private_type_traits_remove_reference
 }
-module std_private_memory_construct_at                    [system] { header "__memory/construct_at.h" }
-module std_private_memory_destruct_n                      [system] { header "__memory/destruct_n.h" }
-module std_private_memory_fwd                             [system] { header "__fwd/memory.h" }
-module std_private_memory_inout_ptr                       [system] { header "__memory/inout_ptr.h" }
-module std_private_memory_out_ptr                         [system] { header "__memory/out_ptr.h" }
-module std_private_memory_pointer_traits                  [system] { header "__memory/pointer_traits.h" }
-module std_private_memory_ranges_construct_at             [system] { header "__memory/ranges_construct_at.h" }
-module std_private_memory_ranges_uninitialized_algorithms [system] {
+module cxx03_std_private_memory_construct_at                    [system] { header "__memory/construct_at.h" }
+module cxx03_std_private_memory_destruct_n                      [system] { header "__memory/destruct_n.h" }
+module cxx03_std_private_memory_fwd                             [system] { header "__fwd/memory.h" }
+module cxx03_std_private_memory_inout_ptr                       [system] { header "__memory/inout_ptr.h" }
+module cxx03_std_private_memory_out_ptr                         [system] { header "__memory/out_ptr.h" }
+module cxx03_std_private_memory_pointer_traits                  [system] { header "__memory/pointer_traits.h" }
+module cxx03_std_private_memory_ranges_construct_at             [system] { header "__memory/ranges_construct_at.h" }
+module cxx03_std_private_memory_ranges_uninitialized_algorithms [system] {
   header "__memory/ranges_uninitialized_algorithms.h"
   export std_private_algorithm_in_out_result
 }
-module std_private_memory_raw_storage_iterator            [system] { header "__memory/raw_storage_iterator.h" }
-module std_private_memory_shared_ptr                      [system] {
+module cxx03_std_private_memory_raw_storage_iterator            [system] { header "__memory/raw_storage_iterator.h" }
+module cxx03_std_private_memory_shared_ptr                      [system] {
   header "__memory/shared_ptr.h"
   export std_private_memory_uninitialized_algorithms
 }
-module std_private_memory_swap_allocator                  [system] { header "__memory/swap_allocator.h" }
-module std_private_memory_temp_value                      [system] { header "__memory/temp_value.h" }
-module std_private_memory_temporary_buffer                [system] {
+module cxx03_std_private_memory_swap_allocator                  [system] { header "__memory/swap_allocator.h" }
+module cxx03_std_private_memory_temp_value                      [system] { header "__memory/temp_value.h" }
+module cxx03_std_private_memory_temporary_buffer                [system] {
   header "__memory/temporary_buffer.h"
   export std_private_utility_pair
 }
-module std_private_memory_uninitialized_algorithms        [system] {
+module cxx03_std_private_memory_uninitialized_algorithms        [system] {
   header "__memory/uninitialized_algorithms.h"
   export std_private_algorithm_copy
 }
-module std_private_memory_unique_ptr                      [system] {
+module cxx03_std_private_memory_unique_ptr                      [system] {
   header "__memory/unique_ptr.h"
   export std_private_type_traits_add_lvalue_reference
   export std_private_type_traits_is_pointer
   export std_private_type_traits_type_identity
 }
-module std_private_memory_uses_allocator                  [system] { header "__memory/uses_allocator.h" }
-module std_private_memory_uses_allocator_construction     [system] { header "__memory/uses_allocator_construction.h" }
-module std_private_memory_voidify                         [system] { header "__memory/voidify.h" }
+module cxx03_std_private_memory_uses_allocator                  [system] { header "__memory/uses_allocator.h" }
+module cxx03_std_private_memory_uses_allocator_construction     [system] { header "__memory/uses_allocator_construction.h" }
+module cxx03_std_private_memory_voidify                         [system] { header "__memory/voidify.h" }
 
-module std_private_memory_resource_memory_resource              [system] { header "__memory_resource/memory_resource.h" }
-module std_private_memory_resource_memory_resource_fwd          [system] { header "__fwd/memory_resource.h" }
-module std_private_memory_resource_monotonic_buffer_resource    [system] { header "__memory_resource/monotonic_buffer_resource.h" }
-module std_private_memory_resource_polymorphic_allocator        [system] { header "__memory_resource/polymorphic_allocator.h" }
-module std_private_memory_resource_pool_options                 [system] { header "__memory_resource/pool_options.h" }
-module std_private_memory_resource_synchronized_pool_resource   [system] {
+module cxx03_std_private_memory_resource_memory_resource              [system] { header "__memory_resource/memory_resource.h" }
+module cxx03_std_private_memory_resource_memory_resource_fwd          [system] { header "__fwd/memory_resource.h" }
+module cxx03_std_private_memory_resource_monotonic_buffer_resource    [system] { header "__memory_resource/monotonic_buffer_resource.h" }
+module cxx03_std_private_memory_resource_polymorphic_allocator        [system] { header "__memory_resource/polymorphic_allocator.h" }
+module cxx03_std_private_memory_resource_pool_options                 [system] { header "__memory_resource/pool_options.h" }
+module cxx03_std_private_memory_resource_synchronized_pool_resource   [system] {
   header "__memory_resource/synchronized_pool_resource.h"
   export *
 }
-module std_private_memory_resource_unsynchronized_pool_resource [system] { header "__memory_resource/unsynchronized_pool_resource.h" }
+module cxx03_std_private_memory_resource_unsynchronized_pool_resource [system] { header "__memory_resource/unsynchronized_pool_resource.h" }
 
-module std_private_mutex_lock_guard  [system] { header "__mutex/lock_guard.h" }
-module std_private_mutex_mutex       [system] { header "__mutex/mutex.h" }
-module std_private_mutex_once_flag  [system]  { header "__mutex/once_flag.h" }
-module std_private_mutex_tag_types   [system] { header "__mutex/tag_types.h" }
-module std_private_mutex_unique_lock [system] { header "__mutex/unique_lock.h" }
+module cxx03_std_private_mutex_lock_guard  [system] { header "__mutex/lock_guard.h" }
+module cxx03_std_private_mutex_mutex       [system] { header "__mutex/mutex.h" }
+module cxx03_std_private_mutex_once_flag  [system]  { header "__mutex/once_flag.h" }
+module cxx03_std_private_mutex_tag_types   [system] { header "__mutex/tag_types.h" }
+module cxx03_std_private_mutex_unique_lock [system] { header "__mutex/unique_lock.h" }
 
-module std_private_numeric_accumulate               [system] { header "__numeric/accumulate.h" }
-module std_private_numeric_adjacent_
diff erence      [system] { header "__numeric/adjacent_
diff erence.h" }
-module std_private_numeric_exclusive_scan           [system] { header "__numeric/exclusive_scan.h" }
-module std_private_numeric_gcd_lcm                  [system] { header "__numeric/gcd_lcm.h" }
-module std_private_numeric_inclusive_scan           [system] { header "__numeric/inclusive_scan.h" }
-module std_private_numeric_inner_product            [system] { header "__numeric/inner_product.h" }
-module std_private_numeric_iota                     [system] { header "__numeric/iota.h" }
-module std_private_numeric_midpoint                 [system] { header "__numeric/midpoint.h" }
-module std_private_numeric_partial_sum              [system] { header "__numeric/partial_sum.h" }
-module std_private_numeric_pstl                     [system] {
+module cxx03_std_private_numeric_accumulate               [system] { header "__numeric/accumulate.h" }
+module cxx03_std_private_numeric_adjacent_
diff erence      [system] { header "__numeric/adjacent_
diff erence.h" }
+module cxx03_std_private_numeric_exclusive_scan           [system] { header "__numeric/exclusive_scan.h" }
+module cxx03_std_private_numeric_gcd_lcm                  [system] { header "__numeric/gcd_lcm.h" }
+module cxx03_std_private_numeric_inclusive_scan           [system] { header "__numeric/inclusive_scan.h" }
+module cxx03_std_private_numeric_inner_product            [system] { header "__numeric/inner_product.h" }
+module cxx03_std_private_numeric_iota                     [system] { header "__numeric/iota.h" }
+module cxx03_std_private_numeric_midpoint                 [system] { header "__numeric/midpoint.h" }
+module cxx03_std_private_numeric_partial_sum              [system] { header "__numeric/partial_sum.h" }
+module cxx03_std_private_numeric_pstl                     [system] {
   header "__numeric/pstl.h"
   export *
 }
-module std_private_numeric_reduce                   [system] { header "__numeric/reduce.h" }
-module std_private_numeric_saturation_arithmetic    [system] { header "__numeric/saturation_arithmetic.h" }
-module std_private_numeric_transform_exclusive_scan [system] { header "__numeric/transform_exclusive_scan.h" }
-module std_private_numeric_transform_inclusive_scan [system] { header "__numeric/transform_inclusive_scan.h" }
-module std_private_numeric_transform_reduce         [system] { header "__numeric/transform_reduce.h" }
+module cxx03_std_private_numeric_reduce                   [system] { header "__numeric/reduce.h" }
+module cxx03_std_private_numeric_saturation_arithmetic    [system] { header "__numeric/saturation_arithmetic.h" }
+module cxx03_std_private_numeric_transform_exclusive_scan [system] { header "__numeric/transform_exclusive_scan.h" }
+module cxx03_std_private_numeric_transform_inclusive_scan [system] { header "__numeric/transform_inclusive_scan.h" }
+module cxx03_std_private_numeric_transform_reduce         [system] { header "__numeric/transform_reduce.h" }
 
-module std_private_pstl_backend                    [system] {
+module cxx03_std_private_pstl_backend                    [system] {
   header "__pstl/backend.h"
   export *
 }
-module std_private_pstl_backend_fwd                [system] {
+module cxx03_std_private_pstl_backend_fwd                [system] {
   header "__pstl/backend_fwd.h"
   export *
 }
-module std_private_pstl_backends_default           [system] {
+module cxx03_std_private_pstl_backends_default           [system] {
   header "__pstl/backends/default.h"
   export *
 }
-module std_private_pstl_backends_libdispatch       [system] {
+module cxx03_std_private_pstl_backends_libdispatch       [system] {
   header "__pstl/backends/libdispatch.h"
   export *
 }
-module std_private_pstl_backends_serial            [system] {
+module cxx03_std_private_pstl_backends_serial            [system] {
   header "__pstl/backends/serial.h"
   export *
 }
-module std_private_pstl_backends_std_thread        [system] {
+module cxx03_std_private_pstl_backends_std_thread        [system] {
   header "__pstl/backends/std_thread.h"
   export *
 }
-module std_private_pstl_cpu_algos_any_of           [system] { header "__pstl/cpu_algos/any_of.h" }
-module std_private_pstl_cpu_algos_cpu_traits       [system] { header "__pstl/cpu_algos/cpu_traits.h" }
-module std_private_pstl_cpu_algos_fill             [system] { header "__pstl/cpu_algos/fill.h" }
-module std_private_pstl_cpu_algos_find_if          [system] { header "__pstl/cpu_algos/find_if.h" }
-module std_private_pstl_cpu_algos_for_each         [system] { header "__pstl/cpu_algos/for_each.h" }
-module std_private_pstl_cpu_algos_merge            [system] { header "__pstl/cpu_algos/merge.h" }
-module std_private_pstl_cpu_algos_stable_sort      [system] { header "__pstl/cpu_algos/stable_sort.h" }
-module std_private_pstl_cpu_algos_transform        [system] { header "__pstl/cpu_algos/transform.h" }
-module std_private_pstl_cpu_algos_transform_reduce [system] { header "__pstl/cpu_algos/transform_reduce.h" }
-module std_private_pstl_dispatch                   [system] { header "__pstl/dispatch.h" }
-module std_private_pstl_handle_exception           [system] { header "__pstl/handle_exception.h" }
+module cxx03_std_private_pstl_cpu_algos_any_of           [system] { header "__pstl/cpu_algos/any_of.h" }
+module cxx03_std_private_pstl_cpu_algos_cpu_traits       [system] { header "__pstl/cpu_algos/cpu_traits.h" }
+module cxx03_std_private_pstl_cpu_algos_fill             [system] { header "__pstl/cpu_algos/fill.h" }
+module cxx03_std_private_pstl_cpu_algos_find_if          [system] { header "__pstl/cpu_algos/find_if.h" }
+module cxx03_std_private_pstl_cpu_algos_for_each         [system] { header "__pstl/cpu_algos/for_each.h" }
+module cxx03_std_private_pstl_cpu_algos_merge            [system] { header "__pstl/cpu_algos/merge.h" }
+module cxx03_std_private_pstl_cpu_algos_stable_sort      [system] { header "__pstl/cpu_algos/stable_sort.h" }
+module cxx03_std_private_pstl_cpu_algos_transform        [system] { header "__pstl/cpu_algos/transform.h" }
+module cxx03_std_private_pstl_cpu_algos_transform_reduce [system] { header "__pstl/cpu_algos/transform_reduce.h" }
+module cxx03_std_private_pstl_dispatch                   [system] { header "__pstl/dispatch.h" }
+module cxx03_std_private_pstl_handle_exception           [system] { header "__pstl/handle_exception.h" }
 
-module std_private_queue_fwd [system] { header "__fwd/queue.h" }
+module cxx03_std_private_queue_fwd [system] { header "__fwd/queue.h" }
 
-module std_private_ostream_basic_ostream [system] {
+module cxx03_std_private_ostream_basic_ostream [system] {
   header "__ostream/basic_ostream.h"
   export std_streambuf
 }
-module std_private_ostream_print         [system] {
+module cxx03_std_private_ostream_print         [system] {
   header "__ostream/print.h"
   export std_print
 }
 
-module std_private_random_bernoulli_distribution          [system] { header "__random/bernoulli_distribution.h" }
-module std_private_random_binomial_distribution           [system] { header "__random/binomial_distribution.h" }
-module std_private_random_cauchy_distribution             [system] { header "__random/cauchy_distribution.h" }
-module std_private_random_chi_squared_distribution        [system] { header "__random/chi_squared_distribution.h" }
-module std_private_random_clamp_to_integral               [system] { header "__random/clamp_to_integral.h" }
-module std_private_random_default_random_engine           [system] { header "__random/default_random_engine.h" }
-module std_private_random_discard_block_engine            [system] { header "__random/discard_block_engine.h" }
-module std_private_random_discrete_distribution           [system] {
+module cxx03_std_private_random_bernoulli_distribution          [system] { header "__random/bernoulli_distribution.h" }
+module cxx03_std_private_random_binomial_distribution           [system] { header "__random/binomial_distribution.h" }
+module cxx03_std_private_random_cauchy_distribution             [system] { header "__random/cauchy_distribution.h" }
+module cxx03_std_private_random_chi_squared_distribution        [system] { header "__random/chi_squared_distribution.h" }
+module cxx03_std_private_random_clamp_to_integral               [system] { header "__random/clamp_to_integral.h" }
+module cxx03_std_private_random_default_random_engine           [system] { header "__random/default_random_engine.h" }
+module cxx03_std_private_random_discard_block_engine            [system] { header "__random/discard_block_engine.h" }
+module cxx03_std_private_random_discrete_distribution           [system] {
   header "__random/discrete_distribution.h"
   export *
 }
-module std_private_random_exponential_distribution        [system] { header "__random/exponential_distribution.h" }
-module std_private_random_extreme_value_distribution      [system] { header "__random/extreme_value_distribution.h" }
-module std_private_random_fisher_f_distribution           [system] { header "__random/fisher_f_distribution.h" }
-module std_private_random_gamma_distribution              [system] { header "__random/gamma_distribution.h" }
-module std_private_random_generate_canonical              [system] { header "__random/generate_canonical.h" }
-module std_private_random_geometric_distribution          [system] { header "__random/geometric_distribution.h" }
-module std_private_random_independent_bits_engine         [system] { header "__random/independent_bits_engine.h" }
-module std_private_random_is_seed_sequence                [system] { header "__random/is_seed_sequence.h" }
-module std_private_random_is_valid                        [system] { header "__random/is_valid.h" }
-module std_private_random_knuth_b                         [system] { header "__random/knuth_b.h" }
-module std_private_random_linear_congruential_engine      [system] { header "__random/linear_congruential_engine.h" }
-module std_private_random_log2                            [system] { header "__random/log2.h" }
-module std_private_random_lognormal_distribution          [system] { header "__random/lognormal_distribution.h" }
-module std_private_random_mersenne_twister_engine         [system] { header "__random/mersenne_twister_engine.h" }
-module std_private_random_negative_binomial_distribution  [system] { header "__random/negative_binomial_distribution.h" }
-module std_private_random_normal_distribution             [system] { header "__random/normal_distribution.h" }
-module std_private_random_piecewise_constant_distribution [system] {
+module cxx03_std_private_random_exponential_distribution        [system] { header "__random/exponential_distribution.h" }
+module cxx03_std_private_random_extreme_value_distribution      [system] { header "__random/extreme_value_distribution.h" }
+module cxx03_std_private_random_fisher_f_distribution           [system] { header "__random/fisher_f_distribution.h" }
+module cxx03_std_private_random_gamma_distribution              [system] { header "__random/gamma_distribution.h" }
+module cxx03_std_private_random_generate_canonical              [system] { header "__random/generate_canonical.h" }
+module cxx03_std_private_random_geometric_distribution          [system] { header "__random/geometric_distribution.h" }
+module cxx03_std_private_random_independent_bits_engine         [system] { header "__random/independent_bits_engine.h" }
+module cxx03_std_private_random_is_seed_sequence                [system] { header "__random/is_seed_sequence.h" }
+module cxx03_std_private_random_is_valid                        [system] { header "__random/is_valid.h" }
+module cxx03_std_private_random_knuth_b                         [system] { header "__random/knuth_b.h" }
+module cxx03_std_private_random_linear_congruential_engine      [system] { header "__random/linear_congruential_engine.h" }
+module cxx03_std_private_random_log2                            [system] { header "__random/log2.h" }
+module cxx03_std_private_random_lognormal_distribution          [system] { header "__random/lognormal_distribution.h" }
+module cxx03_std_private_random_mersenne_twister_engine         [system] { header "__random/mersenne_twister_engine.h" }
+module cxx03_std_private_random_negative_binomial_distribution  [system] { header "__random/negative_binomial_distribution.h" }
+module cxx03_std_private_random_normal_distribution             [system] { header "__random/normal_distribution.h" }
+module cxx03_std_private_random_piecewise_constant_distribution [system] {
   header "__random/piecewise_constant_distribution.h"
   export *
 }
-module std_private_random_piecewise_linear_distribution   [system] {
+module cxx03_std_private_random_piecewise_linear_distribution   [system] {
   header "__random/piecewise_linear_distribution.h"
   export *
 }
-module std_private_random_poisson_distribution            [system] { header "__random/poisson_distribution.h" }
-module std_private_random_random_device                   [system] {
+module cxx03_std_private_random_poisson_distribution            [system] { header "__random/poisson_distribution.h" }
+module cxx03_std_private_random_random_device                   [system] {
   header "__random/random_device.h"
   export *
 }
-module std_private_random_ranlux                          [system] { header "__random/ranlux.h" }
-module std_private_random_seed_seq                        [system] {
+module cxx03_std_private_random_ranlux                          [system] { header "__random/ranlux.h" }
+module cxx03_std_private_random_seed_seq                        [system] {
   header "__random/seed_seq.h"
   export *
 }
-module std_private_random_shuffle_order_engine            [system] { header "__random/shuffle_order_engine.h" }
-module std_private_random_student_t_distribution          [system] { header "__random/student_t_distribution.h" }
-module std_private_random_subtract_with_carry_engine      [system] { header "__random/subtract_with_carry_engine.h" }
-module std_private_random_uniform_int_distribution        [system] { header "__random/uniform_int_distribution.h" }
-module std_private_random_uniform_random_bit_generator    [system] { header "__random/uniform_random_bit_generator.h" }
-module std_private_random_uniform_real_distribution       [system] { header "__random/uniform_real_distribution.h" }
-module std_private_random_weibull_distribution            [system] { header "__random/weibull_distribution.h" }
+module cxx03_std_private_random_shuffle_order_engine            [system] { header "__random/shuffle_order_engine.h" }
+module cxx03_std_private_random_student_t_distribution          [system] { header "__random/student_t_distribution.h" }
+module cxx03_std_private_random_subtract_with_carry_engine      [system] { header "__random/subtract_with_carry_engine.h" }
+module cxx03_std_private_random_uniform_int_distribution        [system] { header "__random/uniform_int_distribution.h" }
+module cxx03_std_private_random_uniform_random_bit_generator    [system] { header "__random/uniform_random_bit_generator.h" }
+module cxx03_std_private_random_uniform_real_distribution       [system] { header "__random/uniform_real_distribution.h" }
+module cxx03_std_private_random_weibull_distribution            [system] { header "__random/weibull_distribution.h" }
 
-module std_private_ranges_access                     [system] { header "__ranges/access.h" }
-module std_private_ranges_all                        [system] {
+module cxx03_std_private_ranges_access                     [system] { header "__ranges/access.h" }
+module cxx03_std_private_ranges_all                        [system] {
   header "__ranges/all.h"
   export std_private_functional_compose
   export std_private_functional_perfect_forward
   export std_private_ranges_owning_view
 }
-module std_private_ranges_as_rvalue_view             [system] { header "__ranges/as_rvalue_view.h" }
-module std_private_ranges_chunk_by_view              [system] { header "__ranges/chunk_by_view.h" }
-module std_private_ranges_common_view                [system] { header "__ranges/common_view.h" }
-module std_private_ranges_concepts                   [system] {
+module cxx03_std_private_ranges_as_rvalue_view             [system] { header "__ranges/as_rvalue_view.h" }
+module cxx03_std_private_ranges_chunk_by_view              [system] { header "__ranges/chunk_by_view.h" }
+module cxx03_std_private_ranges_common_view                [system] { header "__ranges/common_view.h" }
+module cxx03_std_private_ranges_concepts                   [system] {
   header "__ranges/concepts.h"
   export std_private_iterator_concepts
 }
-module std_private_ranges_container_compatible_range [system] { header "__ranges/container_compatible_range.h" }
-module std_private_ranges_counted                    [system] {
+module cxx03_std_private_ranges_container_compatible_range [system] { header "__ranges/container_compatible_range.h" }
+module cxx03_std_private_ranges_counted                    [system] {
   header "__ranges/counted.h"
   export std_span
 }
-module std_private_ranges_dangling                   [system] { header "__ranges/dangling.h" }
-module std_private_ranges_data                       [system] { header "__ranges/data.h" }
-module std_private_ranges_drop_view                  [system] { header "__ranges/drop_view.h" }
-module std_private_ranges_drop_while_view            [system] { header "__ranges/drop_while_view.h" }
-module std_private_ranges_elements_view              [system] { header "__ranges/elements_view.h" }
-module std_private_ranges_empty                      [system] { header "__ranges/empty.h" }
-module std_private_ranges_empty_view                 [system] { header "__ranges/empty_view.h" }
-module std_private_ranges_enable_borrowed_range      [system] { header "__ranges/enable_borrowed_range.h" }
-module std_private_ranges_enable_view                [system] { header "__ranges/enable_view.h" }
-module std_private_ranges_filter_view                [system] {
+module cxx03_std_private_ranges_dangling                   [system] { header "__ranges/dangling.h" }
+module cxx03_std_private_ranges_data                       [system] { header "__ranges/data.h" }
+module cxx03_std_private_ranges_drop_view                  [system] { header "__ranges/drop_view.h" }
+module cxx03_std_private_ranges_drop_while_view            [system] { header "__ranges/drop_while_view.h" }
+module cxx03_std_private_ranges_elements_view              [system] { header "__ranges/elements_view.h" }
+module cxx03_std_private_ranges_empty                      [system] { header "__ranges/empty.h" }
+module cxx03_std_private_ranges_empty_view                 [system] { header "__ranges/empty_view.h" }
+module cxx03_std_private_ranges_enable_borrowed_range      [system] { header "__ranges/enable_borrowed_range.h" }
+module cxx03_std_private_ranges_enable_view                [system] { header "__ranges/enable_view.h" }
+module cxx03_std_private_ranges_filter_view                [system] {
   header "__ranges/filter_view.h"
   export std_private_ranges_range_adaptor
 }
-module std_private_ranges_from_range                 [system] { header "__ranges/from_range.h" }
-module std_private_ranges_iota_view                  [system] { header "__ranges/iota_view.h" }
-module std_private_ranges_istream_view               [system] {
+module cxx03_std_private_ranges_from_range                 [system] { header "__ranges/from_range.h" }
+module cxx03_std_private_ranges_iota_view                  [system] { header "__ranges/iota_view.h" }
+module cxx03_std_private_ranges_istream_view               [system] {
   header "__ranges/istream_view.h"
 }
-module std_private_ranges_join_view                  [system] {
+module cxx03_std_private_ranges_join_view                  [system] {
   header "__ranges/join_view.h"
   export std_private_iterator_iterator_with_data
   export std_private_iterator_segmented_iterator
 }
-module std_private_ranges_lazy_split_view            [system] {
+module cxx03_std_private_ranges_lazy_split_view            [system] {
   header "__ranges/lazy_split_view.h"
   export std_private_ranges_non_propagating_cache
 }
-module std_private_ranges_movable_box                [system] { header "__ranges/movable_box.h" }
-module std_private_ranges_non_propagating_cache      [system] { header "__ranges/non_propagating_cache.h" }
-module std_private_ranges_owning_view                [system] { header "__ranges/owning_view.h" }
-module std_private_ranges_range_adaptor              [system] { header "__ranges/range_adaptor.h" }
-module std_private_ranges_rbegin                     [system] { header "__ranges/rbegin.h" }
-module std_private_ranges_ref_view                   [system] { header "__ranges/ref_view.h" }
-module std_private_ranges_rend                       [system] { header "__ranges/rend.h" }
-module std_private_ranges_repeat_view                [system] { header "__ranges/repeat_view.h" }
-module std_private_ranges_reverse_view               [system] { header "__ranges/reverse_view.h" }
-module std_private_ranges_single_view                [system] { header "__ranges/single_view.h" }
-module std_private_ranges_size                       [system] {
+module cxx03_std_private_ranges_movable_box                [system] { header "__ranges/movable_box.h" }
+module cxx03_std_private_ranges_non_propagating_cache      [system] { header "__ranges/non_propagating_cache.h" }
+module cxx03_std_private_ranges_owning_view                [system] { header "__ranges/owning_view.h" }
+module cxx03_std_private_ranges_range_adaptor              [system] { header "__ranges/range_adaptor.h" }
+module cxx03_std_private_ranges_rbegin                     [system] { header "__ranges/rbegin.h" }
+module cxx03_std_private_ranges_ref_view                   [system] { header "__ranges/ref_view.h" }
+module cxx03_std_private_ranges_rend                       [system] { header "__ranges/rend.h" }
+module cxx03_std_private_ranges_repeat_view                [system] { header "__ranges/repeat_view.h" }
+module cxx03_std_private_ranges_reverse_view               [system] { header "__ranges/reverse_view.h" }
+module cxx03_std_private_ranges_single_view                [system] { header "__ranges/single_view.h" }
+module cxx03_std_private_ranges_size                       [system] {
   header "__ranges/size.h"
   export std_private_type_traits_make_unsigned
 }
-module std_private_ranges_split_view                 [system] { header "__ranges/split_view.h" }
-module std_private_ranges_subrange                   [system] {
+module cxx03_std_private_ranges_split_view                 [system] { header "__ranges/split_view.h" }
+module cxx03_std_private_ranges_subrange                   [system] {
   header "__ranges/subrange.h"
   export std_private_ranges_subrange_fwd
 }
-module std_private_ranges_subrange_fwd               [system] {
+module cxx03_std_private_ranges_subrange_fwd               [system] {
   header "__fwd/subrange.h"
   export std_private_iterator_concepts
 }
-module std_private_ranges_take_view                  [system] { header "__ranges/take_view.h" }
-module std_private_ranges_take_while_view            [system] { header "__ranges/take_while_view.h" }
-module std_private_ranges_to                         [system] { header "__ranges/to.h" }
-module std_private_ranges_transform_view             [system] {
+module cxx03_std_private_ranges_take_view                  [system] { header "__ranges/take_view.h" }
+module cxx03_std_private_ranges_take_while_view            [system] { header "__ranges/take_while_view.h" }
+module cxx03_std_private_ranges_to                         [system] { header "__ranges/to.h" }
+module cxx03_std_private_ranges_transform_view             [system] {
   header "__ranges/transform_view.h"
   export std_private_functional_bind_back
   export std_private_functional_perfect_forward
   export std_private_ranges_movable_box
 }
-module std_private_ranges_view_interface             [system] { header "__ranges/view_interface.h" }
-module std_private_ranges_views                      [system] { header "__ranges/views.h" }
-module std_private_ranges_zip_view                   [system] {
+module cxx03_std_private_ranges_view_interface             [system] { header "__ranges/view_interface.h" }
+module cxx03_std_private_ranges_views                      [system] { header "__ranges/views.h" }
+module cxx03_std_private_ranges_zip_view                   [system] {
   header "__ranges/zip_view.h"
   export std_private_utility_pair
 }
 
-module std_private_span_span_fwd [system] { header "__fwd/span.h" }
+module cxx03_std_private_span_span_fwd [system] { header "__fwd/span.h" }
 
-module std_private_stack_fwd [system] { header "__fwd/stack.h" }
+module cxx03_std_private_stack_fwd [system] { header "__fwd/stack.h" }
 
-module std_private_stop_token_atomic_unique_lock   [system] { header "__stop_token/atomic_unique_lock.h" }
-module std_private_stop_token_intrusive_list_view  [system] { header "__stop_token/intrusive_list_view.h" }
-module std_private_stop_token_intrusive_shared_ptr [system] { header "__stop_token/intrusive_shared_ptr.h" }
-module std_private_stop_token_stop_callback        [system] { header "__stop_token/stop_callback.h" }
-module std_private_stop_token_stop_source          [system] {
+module cxx03_std_private_stop_token_atomic_unique_lock   [system] { header "__stop_token/atomic_unique_lock.h" }
+module cxx03_std_private_stop_token_intrusive_list_view  [system] { header "__stop_token/intrusive_list_view.h" }
+module cxx03_std_private_stop_token_intrusive_shared_ptr [system] { header "__stop_token/intrusive_shared_ptr.h" }
+module cxx03_std_private_stop_token_stop_callback        [system] { header "__stop_token/stop_callback.h" }
+module cxx03_std_private_stop_token_stop_source          [system] {
   header "__stop_token/stop_source.h"
   export *
 }
-module std_private_stop_token_stop_state           [system] {
+module cxx03_std_private_stop_token_stop_state           [system] {
   header "__stop_token/stop_state.h"
   export *
 }
-module std_private_stop_token_stop_token           [system] {
+module cxx03_std_private_stop_token_stop_token           [system] {
   header "__stop_token/stop_token.h"
   export *
 }
 
-module std_private_string_char_traits           [system] {
+module cxx03_std_private_string_char_traits           [system] {
   header "__string/char_traits.h"
   export *
 }
-module std_private_string_constexpr_c_functions [system] {
+module cxx03_std_private_string_constexpr_c_functions [system] {
   header "__string/constexpr_c_functions.h"
   export std_private_type_traits_is_equality_comparable
 }
-module std_private_string_extern_template_lists [system] { header "__string/extern_template_lists.h" }
-module std_private_string_string_fwd            [system] { header "__fwd/string.h" }
+module cxx03_std_private_string_extern_template_lists [system] { header "__string/extern_template_lists.h" }
+module cxx03_std_private_string_string_fwd            [system] { header "__fwd/string.h" }
 
-module std_private_string_view_string_view_fwd [system] { header "__fwd/string_view.h" }
+module cxx03_std_private_string_view_string_view_fwd [system] { header "__fwd/string_view.h" }
 
-module std_private_system_error_errc            [system] { header "__system_error/errc.h" }
-module std_private_system_error_error_category  [system] { header "__system_error/error_category.h" }
-module std_private_system_error_error_code      [system] {
+module cxx03_std_private_system_error_errc            [system] { header "__system_error/errc.h" }
+module cxx03_std_private_system_error_error_category  [system] { header "__system_error/error_category.h" }
+module cxx03_std_private_system_error_error_code      [system] {
   header "__system_error/error_code.h"
   export std_private_functional_hash
   export std_private_functional_unary_function
 }
-module std_private_system_error_error_condition [system] {
+module cxx03_std_private_system_error_error_condition [system] {
   header "__system_error/error_condition.h"
   export std_private_functional_hash
   export std_private_functional_unary_function
 }
-module std_private_system_error_system_error    [system] { header "__system_error/system_error.h" }
+module cxx03_std_private_system_error_system_error    [system] { header "__system_error/system_error.h" }
 
-module std_private_thread_formatter            [system] { header "__thread/formatter.h" }
-module std_private_thread_id                   [system] { header "__thread/id.h" }
-module std_private_thread_jthread              [system] {
+module cxx03_std_private_thread_formatter            [system] { header "__thread/formatter.h" }
+module cxx03_std_private_thread_id                   [system] { header "__thread/id.h" }
+module cxx03_std_private_thread_jthread              [system] {
   header "__thread/jthread.h"
   export *
 }
-module std_private_thread_poll_with_backoff    [system] { header "__thread/poll_with_backoff.h" }
-module std_private_thread_support              [system] {
+module cxx03_std_private_thread_poll_with_backoff    [system] { header "__thread/poll_with_backoff.h" }
+module cxx03_std_private_thread_support              [system] {
   header "__thread/support.h"
   export *
 }
-module std_private_thread_support_c11          [system] { textual header "__thread/support/c11.h" }
-module std_private_thread_support_external     [system] { textual header "__thread/support/external.h" }
-module std_private_thread_support_pthread      [system] { textual header "__thread/support/pthread.h" }
-module std_private_thread_support_windows      [system] { textual header "__thread/support/windows.h" }
-module std_private_thread_this_thread          [system] { header "__thread/this_thread.h" }
-module std_private_thread_thread               [system] {
+module cxx03_std_private_thread_support_c11          [system] { textual header "__thread/support/c11.h" }
+module cxx03_std_private_thread_support_external     [system] { textual header "__thread/support/external.h" }
+module cxx03_std_private_thread_support_pthread      [system] { textual header "__thread/support/pthread.h" }
+module cxx03_std_private_thread_support_windows      [system] { textual header "__thread/support/windows.h" }
+module cxx03_std_private_thread_this_thread          [system] { header "__thread/this_thread.h" }
+module cxx03_std_private_thread_thread               [system] {
   header "__thread/thread.h"
   export *
 }
-module std_private_thread_timed_backoff_policy [system] { header "__thread/timed_backoff_policy.h" }
+module cxx03_std_private_thread_timed_backoff_policy [system] { header "__thread/timed_backoff_policy.h" }
 
-module std_private_tuple_find_index             [system] { header "__tuple/find_index.h" }
-module std_private_tuple_ignore                 [system] { header "__tuple/ignore.h" }
-module std_private_tuple_make_tuple_types       [system] { header "__tuple/make_tuple_types.h" }
-module std_private_tuple_tuple_like_no_subrange [system] {
+module cxx03_std_private_tuple_find_index             [system] { header "__tuple/find_index.h" }
+module cxx03_std_private_tuple_ignore                 [system] { header "__tuple/ignore.h" }
+module cxx03_std_private_tuple_make_tuple_types       [system] { header "__tuple/make_tuple_types.h" }
+module cxx03_std_private_tuple_tuple_like_no_subrange [system] {
   header "__tuple/tuple_like_no_subrange.h"
 }
-module std_private_tuple_sfinae_helpers         [system] { header "__tuple/sfinae_helpers.h" }
-module std_private_tuple_tuple_element          [system] { header "__tuple/tuple_element.h" }
-module std_private_tuple_tuple_fwd              [system] { header "__fwd/tuple.h" }
-module std_private_tuple_tuple_indices          [system] { header "__tuple/tuple_indices.h" }
-module std_private_tuple_tuple_like             [system] {
+module cxx03_std_private_tuple_sfinae_helpers         [system] { header "__tuple/sfinae_helpers.h" }
+module cxx03_std_private_tuple_tuple_element          [system] { header "__tuple/tuple_element.h" }
+module cxx03_std_private_tuple_tuple_fwd              [system] { header "__fwd/tuple.h" }
+module cxx03_std_private_tuple_tuple_indices          [system] { header "__tuple/tuple_indices.h" }
+module cxx03_std_private_tuple_tuple_like             [system] {
   header "__tuple/tuple_like.h"
   export *
 }
-module std_private_tuple_tuple_like_ext         [system] { header "__tuple/tuple_like_ext.h" }
-module std_private_tuple_tuple_size             [system] { header "__tuple/tuple_size.h" }
-module std_private_tuple_tuple_types            [system] { header "__tuple/tuple_types.h" }
+module cxx03_std_private_tuple_tuple_like_ext         [system] { header "__tuple/tuple_like_ext.h" }
+module cxx03_std_private_tuple_tuple_size             [system] { header "__tuple/tuple_size.h" }
+module cxx03_std_private_tuple_tuple_types            [system] { header "__tuple/tuple_types.h" }
 
-module std_private_type_traits_add_const                                 [system] { header "__type_traits/add_const.h" }
-module std_private_type_traits_add_cv                                    [system] { header "__type_traits/add_cv.h" }
-module std_private_type_traits_add_lvalue_reference                      [system] {
+module cxx03_std_private_type_traits_add_const                                 [system] { header "__type_traits/add_const.h" }
+module cxx03_std_private_type_traits_add_cv                                    [system] { header "__type_traits/add_cv.h" }
+module cxx03_std_private_type_traits_add_lvalue_reference                      [system] {
   header "__type_traits/add_lvalue_reference.h"
   export std_private_type_traits_is_referenceable
 }
-module std_private_type_traits_add_pointer                               [system] { header "__type_traits/add_pointer.h" }
-module std_private_type_traits_add_rvalue_reference                      [system] { header "__type_traits/add_rvalue_reference.h" }
-module std_private_type_traits_add_volatile                              [system] { header "__type_traits/add_volatile.h" }
-module std_private_type_traits_aligned_storage                           [system] { header "__type_traits/aligned_storage.h" }
-module std_private_type_traits_aligned_union                             [system] { header "__type_traits/aligned_union.h" }
-module std_private_type_traits_alignment_of                              [system] { header "__type_traits/alignment_of.h" }
-module std_private_type_traits_can_extract_key                           [system] { header "__type_traits/can_extract_key.h" }
-module std_private_type_traits_common_reference                          [system] {
+module cxx03_std_private_type_traits_add_pointer                               [system] { header "__type_traits/add_pointer.h" }
+module cxx03_std_private_type_traits_add_rvalue_reference                      [system] { header "__type_traits/add_rvalue_reference.h" }
+module cxx03_std_private_type_traits_add_volatile                              [system] { header "__type_traits/add_volatile.h" }
+module cxx03_std_private_type_traits_aligned_storage                           [system] { header "__type_traits/aligned_storage.h" }
+module cxx03_std_private_type_traits_aligned_union                             [system] { header "__type_traits/aligned_union.h" }
+module cxx03_std_private_type_traits_alignment_of                              [system] { header "__type_traits/alignment_of.h" }
+module cxx03_std_private_type_traits_can_extract_key                           [system] { header "__type_traits/can_extract_key.h" }
+module cxx03_std_private_type_traits_common_reference                          [system] {
   header "__type_traits/common_reference.h"
   export std_private_type_traits_remove_cvref
 }
-module std_private_type_traits_common_type                               [system] {
+module cxx03_std_private_type_traits_common_type                               [system] {
   header "__type_traits/common_type.h"
   export std_private_utility_declval
 }
-module std_private_type_traits_conditional                               [system] { header "__type_traits/conditional.h" }
-module std_private_type_traits_conjunction                               [system] { header "__type_traits/conjunction.h" }
-module std_private_type_traits_copy_cv                                   [system] { header "__type_traits/copy_cv.h" }
-module std_private_type_traits_copy_cvref                                [system] { header "__type_traits/copy_cvref.h" }
-module std_private_type_traits_datasizeof                                [system] { header "__type_traits/datasizeof.h" }
-module std_private_type_traits_decay                                     [system] {
+module cxx03_std_private_type_traits_conditional                               [system] { header "__type_traits/conditional.h" }
+module cxx03_std_private_type_traits_conjunction                               [system] { header "__type_traits/conjunction.h" }
+module cxx03_std_private_type_traits_copy_cv                                   [system] { header "__type_traits/copy_cv.h" }
+module cxx03_std_private_type_traits_copy_cvref                                [system] { header "__type_traits/copy_cvref.h" }
+module cxx03_std_private_type_traits_datasizeof                                [system] { header "__type_traits/datasizeof.h" }
+module cxx03_std_private_type_traits_decay                                     [system] {
   header "__type_traits/decay.h"
   export std_private_type_traits_add_pointer
 }
-module std_private_type_traits_dependent_type                            [system] { header "__type_traits/dependent_type.h" }
-module std_private_type_traits_desugars_to                               [system] { header "__type_traits/desugars_to.h" }
-module std_private_type_traits_disjunction                               [system] { header "__type_traits/disjunction.h" }
-module std_private_type_traits_enable_if                                 [system] { header "__type_traits/enable_if.h" }
-module std_private_type_traits_extent                                    [system] { header "__type_traits/extent.h" }
-module std_private_type_traits_has_unique_object_representation          [system] { header "__type_traits/has_unique_object_representation.h" }
-module std_private_type_traits_has_virtual_destructor                    [system] { header "__type_traits/has_virtual_destructor.h" }
-module std_private_type_traits_integral_constant                         [system] { header "__type_traits/integral_constant.h" }
-module std_private_type_traits_invoke                                    [system] {
+module cxx03_std_private_type_traits_dependent_type                            [system] { header "__type_traits/dependent_type.h" }
+module cxx03_std_private_type_traits_desugars_to                               [system] { header "__type_traits/desugars_to.h" }
+module cxx03_std_private_type_traits_disjunction                               [system] { header "__type_traits/disjunction.h" }
+module cxx03_std_private_type_traits_enable_if                                 [system] { header "__type_traits/enable_if.h" }
+module cxx03_std_private_type_traits_extent                                    [system] { header "__type_traits/extent.h" }
+module cxx03_std_private_type_traits_has_unique_object_representation          [system] { header "__type_traits/has_unique_object_representation.h" }
+module cxx03_std_private_type_traits_has_virtual_destructor                    [system] { header "__type_traits/has_virtual_destructor.h" }
+module cxx03_std_private_type_traits_integral_constant                         [system] { header "__type_traits/integral_constant.h" }
+module cxx03_std_private_type_traits_invoke                                    [system] {
   header "__type_traits/invoke.h"
   export std_private_type_traits_conditional
   export std_private_type_traits_decay
@@ -1917,194 +1917,194 @@ module std_private_type_traits_invoke                                    [system
   export std_private_type_traits_nat
   export std_private_type_traits_remove_cv
 }
-module std_private_type_traits_is_abstract                               [system] { header "__type_traits/is_abstract.h" }
-module std_private_type_traits_is_aggregate                              [system] { header "__type_traits/is_aggregate.h" }
-module std_private_type_traits_is_allocator                              [system] { header "__type_traits/is_allocator.h" }
-module std_private_type_traits_is_always_bitcastable                     [system] { header "__type_traits/is_always_bitcastable.h" }
-module std_private_type_traits_is_arithmetic                             [system] {
+module cxx03_std_private_type_traits_is_abstract                               [system] { header "__type_traits/is_abstract.h" }
+module cxx03_std_private_type_traits_is_aggregate                              [system] { header "__type_traits/is_aggregate.h" }
+module cxx03_std_private_type_traits_is_allocator                              [system] { header "__type_traits/is_allocator.h" }
+module cxx03_std_private_type_traits_is_always_bitcastable                     [system] { header "__type_traits/is_always_bitcastable.h" }
+module cxx03_std_private_type_traits_is_arithmetic                             [system] {
   header "__type_traits/is_arithmetic.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_array                                  [system] {
+module cxx03_std_private_type_traits_is_array                                  [system] {
   header "__type_traits/is_array.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_assignable                             [system] { header "__type_traits/is_assignable.h" }
-module std_private_type_traits_is_base_of                                [system] { header "__type_traits/is_base_of.h" }
-module std_private_type_traits_is_bounded_array                          [system] { header "__type_traits/is_bounded_array.h" }
-module std_private_type_traits_is_callable                               [system] {
+module cxx03_std_private_type_traits_is_assignable                             [system] { header "__type_traits/is_assignable.h" }
+module cxx03_std_private_type_traits_is_base_of                                [system] { header "__type_traits/is_base_of.h" }
+module cxx03_std_private_type_traits_is_bounded_array                          [system] { header "__type_traits/is_bounded_array.h" }
+module cxx03_std_private_type_traits_is_callable                               [system] {
   header "__type_traits/is_callable.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_char_like_type                         [system] { header "__type_traits/is_char_like_type.h" }
-module std_private_type_traits_is_class                                  [system] { header "__type_traits/is_class.h" }
-module std_private_type_traits_is_compound                               [system] { header "__type_traits/is_compound.h" }
-module std_private_type_traits_is_const                                  [system] { header "__type_traits/is_const.h" }
-module std_private_type_traits_is_constant_evaluated                     [system] { header "__type_traits/is_constant_evaluated.h" }
-module std_private_type_traits_is_constructible                          [system] { header "__type_traits/is_constructible.h" }
-module std_private_type_traits_is_convertible                            [system] {
+module cxx03_std_private_type_traits_is_char_like_type                         [system] { header "__type_traits/is_char_like_type.h" }
+module cxx03_std_private_type_traits_is_class                                  [system] { header "__type_traits/is_class.h" }
+module cxx03_std_private_type_traits_is_compound                               [system] { header "__type_traits/is_compound.h" }
+module cxx03_std_private_type_traits_is_const                                  [system] { header "__type_traits/is_const.h" }
+module cxx03_std_private_type_traits_is_constant_evaluated                     [system] { header "__type_traits/is_constant_evaluated.h" }
+module cxx03_std_private_type_traits_is_constructible                          [system] { header "__type_traits/is_constructible.h" }
+module cxx03_std_private_type_traits_is_convertible                            [system] {
   header "__type_traits/is_convertible.h"
   export std_private_type_traits_is_array
 }
-module std_private_type_traits_is_copy_assignable                        [system] { header "__type_traits/is_copy_assignable.h" }
-module std_private_type_traits_is_copy_constructible                     [system] { header "__type_traits/is_copy_constructible.h" }
-module std_private_type_traits_is_core_convertible                       [system] {
+module cxx03_std_private_type_traits_is_copy_assignable                        [system] { header "__type_traits/is_copy_assignable.h" }
+module cxx03_std_private_type_traits_is_copy_constructible                     [system] { header "__type_traits/is_copy_constructible.h" }
+module cxx03_std_private_type_traits_is_core_convertible                       [system] {
   header "__type_traits/is_core_convertible.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_destructible                           [system] { header "__type_traits/is_destructible.h" }
-module std_private_type_traits_is_empty                                  [system] { header "__type_traits/is_empty.h" }
-module std_private_type_traits_is_enum                                   [system] {
+module cxx03_std_private_type_traits_is_destructible                           [system] { header "__type_traits/is_destructible.h" }
+module cxx03_std_private_type_traits_is_empty                                  [system] { header "__type_traits/is_empty.h" }
+module cxx03_std_private_type_traits_is_enum                                   [system] {
   header "__type_traits/is_enum.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_equality_comparable                    [system] {
+module cxx03_std_private_type_traits_is_equality_comparable                    [system] {
   header "__type_traits/is_equality_comparable.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_execution_policy                       [system] {
+module cxx03_std_private_type_traits_is_execution_policy                       [system] {
   header "__type_traits/is_execution_policy.h"
   export std_private_type_traits_remove_cvref
 }
-module std_private_type_traits_is_final                                  [system] { header "__type_traits/is_final.h" }
-module std_private_type_traits_is_floating_point                         [system] { header "__type_traits/is_floating_point.h" }
-module std_private_type_traits_is_function                               [system] { header "__type_traits/is_function.h" }
-module std_private_type_traits_is_fundamental                            [system] { header "__type_traits/is_fundamental.h" }
-module std_private_type_traits_is_implicitly_default_constructible       [system] {
+module cxx03_std_private_type_traits_is_final                                  [system] { header "__type_traits/is_final.h" }
+module cxx03_std_private_type_traits_is_floating_point                         [system] { header "__type_traits/is_floating_point.h" }
+module cxx03_std_private_type_traits_is_function                               [system] { header "__type_traits/is_function.h" }
+module cxx03_std_private_type_traits_is_fundamental                            [system] { header "__type_traits/is_fundamental.h" }
+module cxx03_std_private_type_traits_is_implicitly_default_constructible       [system] {
   header "__type_traits/is_implicitly_default_constructible.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_integral                               [system] { header "__type_traits/is_integral.h" }
-module std_private_type_traits_is_literal_type                           [system] { header "__type_traits/is_literal_type.h" }
-module std_private_type_traits_is_member_pointer                         [system] { header "__type_traits/is_member_pointer.h" }
-module std_private_type_traits_is_nothrow_assignable                     [system] { header "__type_traits/is_nothrow_assignable.h" }
-module std_private_type_traits_is_nothrow_constructible                  [system] {
+module cxx03_std_private_type_traits_is_integral                               [system] { header "__type_traits/is_integral.h" }
+module cxx03_std_private_type_traits_is_literal_type                           [system] { header "__type_traits/is_literal_type.h" }
+module cxx03_std_private_type_traits_is_member_pointer                         [system] { header "__type_traits/is_member_pointer.h" }
+module cxx03_std_private_type_traits_is_nothrow_assignable                     [system] { header "__type_traits/is_nothrow_assignable.h" }
+module cxx03_std_private_type_traits_is_nothrow_constructible                  [system] {
   header "__type_traits/is_nothrow_constructible.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_nothrow_convertible                    [system] { header "__type_traits/is_nothrow_convertible.h" }
-module std_private_type_traits_is_nothrow_destructible                   [system] {
+module cxx03_std_private_type_traits_is_nothrow_convertible                    [system] { header "__type_traits/is_nothrow_convertible.h" }
+module cxx03_std_private_type_traits_is_nothrow_destructible                   [system] {
   header "__type_traits/is_nothrow_destructible.h"
   export std_private_type_traits_is_destructible
 }
-module std_private_type_traits_is_null_pointer                           [system] {
+module cxx03_std_private_type_traits_is_null_pointer                           [system] {
   header "__type_traits/is_null_pointer.h"
   export std_cstddef
 }
-module std_private_type_traits_is_object                                 [system] {
+module cxx03_std_private_type_traits_is_object                                 [system] {
   header "__type_traits/is_object.h"
   export std_private_type_traits_is_scalar
 }
-module std_private_type_traits_is_pod                                    [system] { header "__type_traits/is_pod.h" }
-module std_private_type_traits_is_pointer                                [system] { header "__type_traits/is_pointer.h" }
-module std_private_type_traits_is_polymorphic                            [system] { header "__type_traits/is_polymorphic.h" }
-module std_private_type_traits_is_primary_template                       [system] {
+module cxx03_std_private_type_traits_is_pod                                    [system] { header "__type_traits/is_pod.h" }
+module cxx03_std_private_type_traits_is_pointer                                [system] { header "__type_traits/is_pointer.h" }
+module cxx03_std_private_type_traits_is_polymorphic                            [system] { header "__type_traits/is_polymorphic.h" }
+module cxx03_std_private_type_traits_is_primary_template                       [system] {
   header "__type_traits/is_primary_template.h"
   export std_private_type_traits_enable_if
 }
-module std_private_type_traits_is_reference                              [system] { header "__type_traits/is_reference.h" }
-module std_private_type_traits_is_reference_wrapper                      [system] { header "__type_traits/is_reference_wrapper.h" }
-module std_private_type_traits_is_referenceable                          [system] { header "__type_traits/is_referenceable.h" }
-module std_private_type_traits_is_same                                   [system] {
+module cxx03_std_private_type_traits_is_reference                              [system] { header "__type_traits/is_reference.h" }
+module cxx03_std_private_type_traits_is_reference_wrapper                      [system] { header "__type_traits/is_reference_wrapper.h" }
+module cxx03_std_private_type_traits_is_referenceable                          [system] { header "__type_traits/is_referenceable.h" }
+module cxx03_std_private_type_traits_is_same                                   [system] {
   header "__type_traits/is_same.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_scalar                                 [system] {
+module cxx03_std_private_type_traits_is_scalar                                 [system] {
   header "__type_traits/is_scalar.h"
   export std_private_type_traits_is_null_pointer
 }
-module std_private_type_traits_is_signed                                 [system] { header "__type_traits/is_signed.h" }
-module std_private_type_traits_is_signed_integer                         [system] { header "__type_traits/is_signed_integer.h" }
-module std_private_type_traits_is_specialization                         [system] { header "__type_traits/is_specialization.h" }
-module std_private_type_traits_is_standard_layout                        [system] { header "__type_traits/is_standard_layout.h" }
-module std_private_type_traits_is_swappable                              [system] {
+module cxx03_std_private_type_traits_is_signed                                 [system] { header "__type_traits/is_signed.h" }
+module cxx03_std_private_type_traits_is_signed_integer                         [system] { header "__type_traits/is_signed_integer.h" }
+module cxx03_std_private_type_traits_is_specialization                         [system] { header "__type_traits/is_specialization.h" }
+module cxx03_std_private_type_traits_is_standard_layout                        [system] { header "__type_traits/is_standard_layout.h" }
+module cxx03_std_private_type_traits_is_swappable                              [system] {
   header "__type_traits/is_swappable.h"
   export std_private_type_traits_is_move_constructible
 }
-module std_private_type_traits_is_trivial                                [system] { header "__type_traits/is_trivial.h" }
-module std_private_type_traits_is_trivially_assignable                   [system] { header "__type_traits/is_trivially_assignable.h" }
-module std_private_type_traits_is_trivially_constructible                [system] { header "__type_traits/is_trivially_constructible.h" }
-module std_private_type_traits_is_trivially_copyable                     [system] { header "__type_traits/is_trivially_copyable.h" }
-module std_private_type_traits_is_trivially_destructible                 [system] { header "__type_traits/is_trivially_destructible.h" }
-module std_private_type_traits_is_trivially_lexicographically_comparable [system] { header "__type_traits/is_trivially_lexicographically_comparable.h" }
-module std_private_type_traits_is_trivially_relocatable                  [system] { header "__type_traits/is_trivially_relocatable.h" }
-module std_private_type_traits_is_unbounded_array                        [system] { header "__type_traits/is_unbounded_array.h" }
-module std_private_type_traits_is_union                                  [system] { header "__type_traits/is_union.h" }
-module std_private_type_traits_is_unsigned                               [system] { header "__type_traits/is_unsigned.h" }
-module std_private_type_traits_is_unsigned_integer                       [system] { header "__type_traits/is_unsigned_integer.h" }
-module std_private_type_traits_is_valid_expansion                        [system] { header "__type_traits/is_valid_expansion.h" }
-module std_private_type_traits_is_void                                   [system] {
+module cxx03_std_private_type_traits_is_trivial                                [system] { header "__type_traits/is_trivial.h" }
+module cxx03_std_private_type_traits_is_trivially_assignable                   [system] { header "__type_traits/is_trivially_assignable.h" }
+module cxx03_std_private_type_traits_is_trivially_constructible                [system] { header "__type_traits/is_trivially_constructible.h" }
+module cxx03_std_private_type_traits_is_trivially_copyable                     [system] { header "__type_traits/is_trivially_copyable.h" }
+module cxx03_std_private_type_traits_is_trivially_destructible                 [system] { header "__type_traits/is_trivially_destructible.h" }
+module cxx03_std_private_type_traits_is_trivially_lexicographically_comparable [system] { header "__type_traits/is_trivially_lexicographically_comparable.h" }
+module cxx03_std_private_type_traits_is_trivially_relocatable                  [system] { header "__type_traits/is_trivially_relocatable.h" }
+module cxx03_std_private_type_traits_is_unbounded_array                        [system] { header "__type_traits/is_unbounded_array.h" }
+module cxx03_std_private_type_traits_is_union                                  [system] { header "__type_traits/is_union.h" }
+module cxx03_std_private_type_traits_is_unsigned                               [system] { header "__type_traits/is_unsigned.h" }
+module cxx03_std_private_type_traits_is_unsigned_integer                       [system] { header "__type_traits/is_unsigned_integer.h" }
+module cxx03_std_private_type_traits_is_valid_expansion                        [system] { header "__type_traits/is_valid_expansion.h" }
+module cxx03_std_private_type_traits_is_void                                   [system] {
   header "__type_traits/is_void.h"
   export std_private_type_traits_integral_constant
 }
-module std_private_type_traits_is_volatile                               [system] { header "__type_traits/is_volatile.h" }
-module std_private_type_traits_lazy                                      [system] { header "__type_traits/lazy.h" }
-module std_private_type_traits_make_32_64_or_128_bit                     [system] { header "__type_traits/make_32_64_or_128_bit.h" }
-module std_private_type_traits_make_const_lvalue_ref                     [system] { header "__type_traits/make_const_lvalue_ref.h" }
-module std_private_type_traits_make_signed                               [system] { header "__type_traits/make_signed.h" }
-module std_private_type_traits_make_unsigned                             [system] {
+module cxx03_std_private_type_traits_is_volatile                               [system] { header "__type_traits/is_volatile.h" }
+module cxx03_std_private_type_traits_lazy                                      [system] { header "__type_traits/lazy.h" }
+module cxx03_std_private_type_traits_make_32_64_or_128_bit                     [system] { header "__type_traits/make_32_64_or_128_bit.h" }
+module cxx03_std_private_type_traits_make_const_lvalue_ref                     [system] { header "__type_traits/make_const_lvalue_ref.h" }
+module cxx03_std_private_type_traits_make_signed                               [system] { header "__type_traits/make_signed.h" }
+module cxx03_std_private_type_traits_make_unsigned                             [system] {
   header "__type_traits/make_unsigned.h"
   export std_private_type_traits_is_unsigned
 }
-module std_private_type_traits_maybe_const                               [system] { header "__type_traits/maybe_const.h" }
-module std_private_type_traits_nat                                       [system] { header "__type_traits/nat.h" }
-module std_private_type_traits_negation                                  [system] { header "__type_traits/negation.h" }
-module std_private_type_traits_noexcept_move_assign_container            [system] { header "__type_traits/noexcept_move_assign_container.h" }
-module std_private_type_traits_promote                                   [system] { header "__type_traits/promote.h" }
-module std_private_type_traits_rank                                      [system] { header "__type_traits/rank.h" }
-module std_private_type_traits_remove_all_extents                        [system] { header "__type_traits/remove_all_extents.h" }
-module std_private_type_traits_remove_const                              [system] { header "__type_traits/remove_const.h" }
-module std_private_type_traits_remove_const_ref                          [system] { header "__type_traits/remove_const_ref.h" }
-module std_private_type_traits_remove_cv                                 [system] {
+module cxx03_std_private_type_traits_maybe_const                               [system] { header "__type_traits/maybe_const.h" }
+module cxx03_std_private_type_traits_nat                                       [system] { header "__type_traits/nat.h" }
+module cxx03_std_private_type_traits_negation                                  [system] { header "__type_traits/negation.h" }
+module cxx03_std_private_type_traits_noexcept_move_assign_container            [system] { header "__type_traits/noexcept_move_assign_container.h" }
+module cxx03_std_private_type_traits_promote                                   [system] { header "__type_traits/promote.h" }
+module cxx03_std_private_type_traits_rank                                      [system] { header "__type_traits/rank.h" }
+module cxx03_std_private_type_traits_remove_all_extents                        [system] { header "__type_traits/remove_all_extents.h" }
+module cxx03_std_private_type_traits_remove_const                              [system] { header "__type_traits/remove_const.h" }
+module cxx03_std_private_type_traits_remove_const_ref                          [system] { header "__type_traits/remove_const_ref.h" }
+module cxx03_std_private_type_traits_remove_cv                                 [system] {
   header "__type_traits/remove_cv.h"
   export std_private_type_traits_remove_const
   export std_private_type_traits_remove_volatile
 }
-module std_private_type_traits_remove_cvref                              [system] { header "__type_traits/remove_cvref.h" }
-module std_private_type_traits_remove_extent                             [system] { header "__type_traits/remove_extent.h" }
-module std_private_type_traits_remove_pointer                            [system] { header "__type_traits/remove_pointer.h" }
-module std_private_type_traits_remove_reference                          [system] { header "__type_traits/remove_reference.h" }
-module std_private_type_traits_remove_volatile                           [system] { header "__type_traits/remove_volatile.h" }
-module std_private_type_traits_result_of                                 [system] { header "__type_traits/result_of.h" }
-module std_private_type_traits_strip_signature                           [system] { header "__type_traits/strip_signature.h" }
-module std_private_type_traits_type_identity                             [system] { header "__type_traits/type_identity.h" }
-module std_private_type_traits_type_list                                 [system] { header "__type_traits/type_list.h" }
-module std_private_type_traits_underlying_type                           [system] {
+module cxx03_std_private_type_traits_remove_cvref                              [system] { header "__type_traits/remove_cvref.h" }
+module cxx03_std_private_type_traits_remove_extent                             [system] { header "__type_traits/remove_extent.h" }
+module cxx03_std_private_type_traits_remove_pointer                            [system] { header "__type_traits/remove_pointer.h" }
+module cxx03_std_private_type_traits_remove_reference                          [system] { header "__type_traits/remove_reference.h" }
+module cxx03_std_private_type_traits_remove_volatile                           [system] { header "__type_traits/remove_volatile.h" }
+module cxx03_std_private_type_traits_result_of                                 [system] { header "__type_traits/result_of.h" }
+module cxx03_std_private_type_traits_strip_signature                           [system] { header "__type_traits/strip_signature.h" }
+module cxx03_std_private_type_traits_type_identity                             [system] { header "__type_traits/type_identity.h" }
+module cxx03_std_private_type_traits_type_list                                 [system] { header "__type_traits/type_list.h" }
+module cxx03_std_private_type_traits_underlying_type                           [system] {
   header "__type_traits/underlying_type.h"
   export std_private_type_traits_is_enum
 }
-module std_private_type_traits_unwrap_ref                                [system] { header "__type_traits/unwrap_ref.h" }
-module std_private_type_traits_void_t                                    [system] { header "__type_traits/void_t.h" }
+module cxx03_std_private_type_traits_unwrap_ref                                [system] { header "__type_traits/unwrap_ref.h" }
+module cxx03_std_private_type_traits_void_t                                    [system] { header "__type_traits/void_t.h" }
 
-module std_private_utility_as_const               [system] { header "__utility/as_const.h" }
-module std_private_utility_as_lvalue              [system] { header "__utility/as_lvalue.h" }
-module std_private_utility_auto_cast              [system] {
+module cxx03_std_private_utility_as_const               [system] { header "__utility/as_const.h" }
+module cxx03_std_private_utility_as_lvalue              [system] { header "__utility/as_lvalue.h" }
+module cxx03_std_private_utility_auto_cast              [system] {
   header "__utility/auto_cast.h"
   export std_private_type_traits_decay
 }
-module std_private_utility_cmp                    [system] {
+module cxx03_std_private_utility_cmp                    [system] {
   header "__utility/cmp.h"
   export std_private_type_traits_make_unsigned
 }
-module std_private_utility_convert_to_integral    [system] { header "__utility/convert_to_integral.h" }
-module std_private_utility_declval                [system] { header "__utility/declval.h" }
-module std_private_utility_empty                  [system] { header "__utility/empty.h" }
-module std_private_utility_exception_guard        [system] { header "__utility/exception_guard.h" }
-module std_private_utility_exchange               [system] { header "__utility/exchange.h" }
-module std_private_utility_forward                [system] { header "__utility/forward.h" }
-module std_private_utility_forward_like           [system] { header "__utility/forward_like.h" }
-module std_private_utility_in_place               [system] { header "__utility/in_place.h" }
-module std_private_utility_integer_sequence       [system] { header "__utility/integer_sequence.h" }
-module std_private_utility_is_pointer_in_range    [system] { header "__utility/is_pointer_in_range.h" }
-module std_private_utility_is_valid_range         [system] { header "__utility/is_valid_range.h" }
-module std_private_utility_move                   [system] {
+module cxx03_std_private_utility_convert_to_integral    [system] { header "__utility/convert_to_integral.h" }
+module cxx03_std_private_utility_declval                [system] { header "__utility/declval.h" }
+module cxx03_std_private_utility_empty                  [system] { header "__utility/empty.h" }
+module cxx03_std_private_utility_exception_guard        [system] { header "__utility/exception_guard.h" }
+module cxx03_std_private_utility_exchange               [system] { header "__utility/exchange.h" }
+module cxx03_std_private_utility_forward                [system] { header "__utility/forward.h" }
+module cxx03_std_private_utility_forward_like           [system] { header "__utility/forward_like.h" }
+module cxx03_std_private_utility_in_place               [system] { header "__utility/in_place.h" }
+module cxx03_std_private_utility_integer_sequence       [system] { header "__utility/integer_sequence.h" }
+module cxx03_std_private_utility_is_pointer_in_range    [system] { header "__utility/is_pointer_in_range.h" }
+module cxx03_std_private_utility_is_valid_range         [system] { header "__utility/is_valid_range.h" }
+module cxx03_std_private_utility_move                   [system] {
   header "__utility/move.h"
   export std_private_type_traits_is_copy_constructible
   export std_private_type_traits_is_nothrow_move_constructible
   export std_private_type_traits_remove_reference
 }
-module std_private_utility_no_destroy             [system] { header "__utility/no_destroy.h" }
-module std_private_utility_pair                   [system] {
+module cxx03_std_private_utility_no_destroy             [system] { header "__utility/no_destroy.h" }
+module cxx03_std_private_utility_pair                   [system] {
   header "__utility/pair.h"
   export std_private_ranges_subrange_fwd
   export std_private_tuple_pair_like
@@ -2118,19 +2118,19 @@ module std_private_utility_pair                   [system] {
   export std_private_type_traits_is_nothrow_move_assignable
   export std_private_utility_pair_fwd
 }
-module std_private_utility_pair_fwd                [system] { header "__fwd/pair.h" }
-module std_private_utility_piecewise_construct     [system] { header "__utility/piecewise_construct.h" }
-module std_private_utility_priority_tag            [system] { header "__utility/priority_tag.h" }
-module std_private_utility_private_constructor_tag [system] { header "__utility/private_constructor_tag.h" }
-module std_private_utility_rel_ops                 [system] { header "__utility/rel_ops.h" }
-module std_private_utility_small_buffer            [system] { header "__utility/small_buffer.h" }
-module std_private_utility_swap                    [system] {
+module cxx03_std_private_utility_pair_fwd                [system] { header "__fwd/pair.h" }
+module cxx03_std_private_utility_piecewise_construct     [system] { header "__utility/piecewise_construct.h" }
+module cxx03_std_private_utility_priority_tag            [system] { header "__utility/priority_tag.h" }
+module cxx03_std_private_utility_private_constructor_tag [system] { header "__utility/private_constructor_tag.h" }
+module cxx03_std_private_utility_rel_ops                 [system] { header "__utility/rel_ops.h" }
+module cxx03_std_private_utility_small_buffer            [system] { header "__utility/small_buffer.h" }
+module cxx03_std_private_utility_swap                    [system] {
   header "__utility/swap.h"
   export std_private_type_traits_is_swappable
 }
-module std_private_utility_to_underlying           [system] { header "__utility/to_underlying.h" }
-module std_private_utility_unreachable             [system] { header "__utility/unreachable.h" }
+module cxx03_std_private_utility_to_underlying           [system] { header "__utility/to_underlying.h" }
+module cxx03_std_private_utility_unreachable             [system] { header "__utility/unreachable.h" }
 
-module std_private_variant_monostate               [system] { header "__variant/monostate.h" }
+module cxx03_std_private_variant_monostate               [system] { header "__variant/monostate.h" }
 
-module std_private_vector_fwd                      [system] { header "__fwd/vector.h" }
+module cxx03_std_private_vector_fwd                      [system] { header "__fwd/vector.h" }

diff  --git a/libcxx/include/__cxx03/version b/libcxx/include/__cxx03/version
index dd0fe4b4d2817c..ed1857db05b318 100644
--- a/libcxx/include/__cxx03/version
+++ b/libcxx/include/__cxx03/version
@@ -7,8 +7,8 @@
 //
 //===----------------------------------------------------------------------===//
 
-#ifndef _LIBCPP_VERSIONH
-#define _LIBCPP_VERSIONH
+#ifndef _LIBCPP___CXX03_VERSIONH
+#define _LIBCPP___CXX03_VERSIONH
 
 /*
   version synopsis
@@ -563,4 +563,4 @@ __cpp_lib_void_t                                        201411L <type_traits>
 
 // clang-format on
 
-#endif // _LIBCPP_VERSIONH
+#endif // _LIBCPP___CXX03_VERSIONH

diff  --git a/libcxx/include/algorithm b/libcxx/include/algorithm
index 080fca8c1ca517..e593ae26ed6e24 100644
--- a/libcxx/include/algorithm
+++ b/libcxx/include/algorithm
@@ -1827,8 +1827,9 @@ template <class BidirectionalIterator, class Compare>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/algorithm>
+#else
 #  include <__config>
 
 #  include <__algorithm/adjacent_find.h>
@@ -2056,6 +2057,6 @@ template <class BidirectionalIterator, class Compare>
 #    include <type_traits>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ALGORITHM

diff  --git a/libcxx/include/any b/libcxx/include/any
index c8658a468713ce..934c4dbd45a68e 100644
--- a/libcxx/include/any
+++ b/libcxx/include/any
@@ -80,8 +80,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/any>
+#else
 #  include <__config>
 #  include <__memory/allocator.h>
 #  include <__memory/allocator_destructor.h>
@@ -611,6 +612,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <variant>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ANY

diff  --git a/libcxx/include/array b/libcxx/include/array
index 7aed70f91fdd76..516d96538f5ad7 100644
--- a/libcxx/include/array
+++ b/libcxx/include/array
@@ -111,8 +111,9 @@ template <size_t I, class T, size_t N> const T&& get(const array<T, N>&&) noexce
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/array>
+#else
 #  include <__algorithm/equal.h>
 #  include <__algorithm/fill_n.h>
 #  include <__algorithm/lexicographical_compare.h>
@@ -567,6 +568,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ARRAY

diff  --git a/libcxx/include/atomic b/libcxx/include/atomic
index 64635d099af92f..80f9e437bfaab0 100644
--- a/libcxx/include/atomic
+++ b/libcxx/include/atomic
@@ -587,8 +587,9 @@ template <class T>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/atomic>
+#else
 #  include <__config>
 
 #  include <__atomic/aliases.h>
@@ -625,6 +626,6 @@ template <class T>
 #    include <cstring>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ATOMIC

diff  --git a/libcxx/include/barrier b/libcxx/include/barrier
index 705cb7d9ac52e1..6861532b02ba23 100644
--- a/libcxx/include/barrier
+++ b/libcxx/include/barrier
@@ -45,8 +45,9 @@ namespace std
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/barrier>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -306,6 +307,6 @@ _LIBCPP_POP_MACROS
 #    include <stdexcept>
 #    include <variant>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_BARRIER

diff  --git a/libcxx/include/bit b/libcxx/include/bit
index a5a317ebb232b2..3fea10ba25c4df 100644
--- a/libcxx/include/bit
+++ b/libcxx/include/bit
@@ -61,8 +61,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/bit>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 20
@@ -95,6 +96,6 @@ namespace std {
 #    include <limits>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_BIT

diff  --git a/libcxx/include/bitset b/libcxx/include/bitset
index e2dc7b459f1c4a..8b361824805571 100644
--- a/libcxx/include/bitset
+++ b/libcxx/include/bitset
@@ -126,8 +126,9 @@ template <size_t N> struct hash<std::bitset<N>>;
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/bitset>
+#else
 #  include <__algorithm/count.h>
 #  include <__algorithm/fill.h>
 #  include <__algorithm/fill_n.h>
@@ -971,6 +972,6 @@ _LIBCPP_POP_MACROS
 #    include <cstdlib>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_BITSET

diff  --git a/libcxx/include/cassert b/libcxx/include/cassert
index 18e6e29353362d..9d3cd77fcf2d76 100644
--- a/libcxx/include/cassert
+++ b/libcxx/include/cassert
@@ -16,8 +16,9 @@ Macros:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cassert>
+#else
 #  include <__config>
 
 // <assert.h> is not provided by libc++
@@ -31,4 +32,4 @@ Macros:
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)

diff  --git a/libcxx/include/ccomplex b/libcxx/include/ccomplex
index bd5a811b7e9fb9..10eb8a36e417c5 100644
--- a/libcxx/include/ccomplex
+++ b/libcxx/include/ccomplex
@@ -17,8 +17,9 @@
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ccomplex>
+#else
 #  include <complex>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -36,6 +37,6 @@ using __standard_header_ccomplex _LIBCPP_DEPRECATED_("Include <complex> instead.
 using __use_standard_header_ccomplex                                               = __standard_header_ccomplex;
 
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CCOMPLEX

diff  --git a/libcxx/include/cctype b/libcxx/include/cctype
index ee3002b2cc5fed..abe0ec44e3a642 100644
--- a/libcxx/include/cctype
+++ b/libcxx/include/cctype
@@ -34,8 +34,9 @@ int toupper(int c);
 }  // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cctype>
+#else
 #  include <__config>
 
 #  include <ctype.h>
@@ -125,6 +126,6 @@ using ::tolower _LIBCPP_USING_IF_EXISTS;
 using ::toupper _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CCTYPE

diff  --git a/libcxx/include/cerrno b/libcxx/include/cerrno
index 63017d07c019ab..15925d4381095b 100644
--- a/libcxx/include/cerrno
+++ b/libcxx/include/cerrno
@@ -22,8 +22,9 @@ Macros:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cerrno>
+#else
 #  include <__config>
 
 #  include <errno.h>
@@ -46,6 +47,6 @@ Macros:
 // deprecated in libc++ in https://github.com/llvm/llvm-project/pull/80542.
 // Based on the post commit feedback the macro are no longer deprecated.
 // Instead libc++ leaves the deprecation to the provider of errno.h.
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CERRNO

diff  --git a/libcxx/include/cfenv b/libcxx/include/cfenv
index 47ed700f4bee61..d7ea770297530c 100644
--- a/libcxx/include/cfenv
+++ b/libcxx/include/cfenv
@@ -52,8 +52,9 @@ int feupdateenv(const fenv_t* envp);
 }  // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cfenv>
+#else
 #  include <__config>
 
 #  include <fenv.h>
@@ -86,8 +87,9 @@ using ::fegetenv _LIBCPP_USING_IF_EXISTS;
 using ::feholdexcept _LIBCPP_USING_IF_EXISTS;
 using ::fesetenv _LIBCPP_USING_IF_EXISTS;
 using ::feupdateenv _LIBCPP_USING_IF_EXISTS;
-#endif // 0
 
 _LIBCPP_END_NAMESPACE_STD
 
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+
 #endif // _LIBCPP_CFENV

diff  --git a/libcxx/include/cfloat b/libcxx/include/cfloat
index fc37f58f4f12c4..18b4afd28ee87b 100644
--- a/libcxx/include/cfloat
+++ b/libcxx/include/cfloat
@@ -69,8 +69,9 @@ Macros:
     LDBL_TRUE_MIN       // C11
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cfloat>
+#else
 #  include <__config>
 
 #  include <float.h>
@@ -86,6 +87,6 @@ Macros:
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CFLOAT

diff  --git a/libcxx/include/charconv b/libcxx/include/charconv
index 258779ad0a5575..3526bb9ae05f48 100644
--- a/libcxx/include/charconv
+++ b/libcxx/include/charconv
@@ -75,8 +75,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/charconv>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 17
@@ -115,6 +116,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <new>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CHARCONV

diff  --git a/libcxx/include/chrono b/libcxx/include/chrono
index 6654a6776d3977..d9a8afef933b9b 100644
--- a/libcxx/include/chrono
+++ b/libcxx/include/chrono
@@ -939,8 +939,9 @@ constexpr chrono::year                                  operator ""y(unsigned lo
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/chrono>
+#else
 #  include <__config>
 
 #  include <__chrono/duration.h>
@@ -1019,6 +1020,6 @@ constexpr chrono::year                                  operator ""y(unsigned lo
 #      include <ostream>
 #    endif
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CHRONO

diff  --git a/libcxx/include/cinttypes b/libcxx/include/cinttypes
index 053067d4d62502..4c7e2c5a5bf382 100644
--- a/libcxx/include/cinttypes
+++ b/libcxx/include/cinttypes
@@ -234,8 +234,9 @@ uintmax_t wcstoumax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int
 }  // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cinttypes>
+#else
 #  include <__config>
 
 // standard-mandated includes
@@ -269,6 +270,6 @@ using ::wcstoumax _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CINTTYPES

diff  --git a/libcxx/include/ciso646 b/libcxx/include/ciso646
index 965b78741a0b4b..5b956401430a78 100644
--- a/libcxx/include/ciso646
+++ b/libcxx/include/ciso646
@@ -15,8 +15,9 @@
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ciso646>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -29,6 +30,6 @@ using __standard_header_ciso646 _LIBCPP_DEPRECATED_("removed in C++20. Include <
 using __use_standard_header_ciso646 = __standard_header_ciso646;
 
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CISO646

diff  --git a/libcxx/include/climits b/libcxx/include/climits
index b31f77d9e859d1..a051d964bbce95 100644
--- a/libcxx/include/climits
+++ b/libcxx/include/climits
@@ -37,8 +37,9 @@ Macros:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/climits>
+#else
 #  include <__config>
 
 #  include <limits.h>
@@ -47,6 +48,6 @@ Macros:
 #    pragma GCC system_header
 #  endif
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CLIMITS

diff  --git a/libcxx/include/clocale b/libcxx/include/clocale
index 4199487a3992f3..9ca82fa15be254 100644
--- a/libcxx/include/clocale
+++ b/libcxx/include/clocale
@@ -34,8 +34,9 @@ lconv* localeconv();
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/clocale>
+#else
 #  include <__config>
 
 #  if __has_include(<locale.h>)
@@ -54,6 +55,6 @@ using ::localeconv _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CLOCALE

diff  --git a/libcxx/include/cmath b/libcxx/include/cmath
index ff8e7e1bf14819..9cf044d4d023be 100644
--- a/libcxx/include/cmath
+++ b/libcxx/include/cmath
@@ -312,8 +312,9 @@ constexpr long double lerp(long double a, long double b, long double t) noexcept
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cmath>
+#else
 #  include <__config>
 #  include <__math/hypot.h>
 #  include <__type_traits/enable_if.h>
@@ -616,6 +617,6 @@ _LIBCPP_POP_MACROS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CMATH

diff  --git a/libcxx/include/codecvt b/libcxx/include/codecvt
index ce6d995f37aba9..f7ae804c6789c5 100644
--- a/libcxx/include/codecvt
+++ b/libcxx/include/codecvt
@@ -54,8 +54,9 @@ class codecvt_utf8_utf16
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/codecvt>
+#else
 #  include <__config>
 #  include <__locale>
 #  include <version>
@@ -595,6 +596,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CODECVT

diff  --git a/libcxx/include/compare b/libcxx/include/compare
index 97871e679bf32e..0c19a5bb5f8106 100644
--- a/libcxx/include/compare
+++ b/libcxx/include/compare
@@ -140,8 +140,9 @@ namespace std {
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/compare>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 20
@@ -171,6 +172,6 @@ namespace std {
 #    include <cstddef>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_COMPARE

diff  --git a/libcxx/include/complex b/libcxx/include/complex
index bfc27bb3834163..bc73f313c2ce16 100644
--- a/libcxx/include/complex
+++ b/libcxx/include/complex
@@ -256,8 +256,9 @@ template<class T> complex<T> tanh (const complex<T>&);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/complex>
+#else
 #  include <__config>
 #  include <__fwd/complex.h>
 #  include <__fwd/tuple.h>
@@ -1476,6 +1477,6 @@ _LIBCPP_POP_MACROS
 #    include <stdexcept>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_COMPLEX

diff  --git a/libcxx/include/complex.h b/libcxx/include/complex.h
index 5bc7ab435ca725..8a1f92689601f4 100644
--- a/libcxx/include/complex.h
+++ b/libcxx/include/complex.h
@@ -17,8 +17,9 @@
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/complex.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -30,6 +31,6 @@
 #  elif __has_include_next(<complex.h>)
 #    include_next <complex.h>
 #  endif
-#endif // 0
+#endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_COMPLEX_H

diff  --git a/libcxx/include/concepts b/libcxx/include/concepts
index 2fe5400c2c715a..ff3fd153a38d5e 100644
--- a/libcxx/include/concepts
+++ b/libcxx/include/concepts
@@ -129,8 +129,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/concepts>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 20
@@ -168,6 +169,6 @@ namespace std {
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CONCEPTS

diff  --git a/libcxx/include/condition_variable b/libcxx/include/condition_variable
index f351f13b713893..81699bf6adbf74 100644
--- a/libcxx/include/condition_variable
+++ b/libcxx/include/condition_variable
@@ -118,8 +118,9 @@ public:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/condition_variable>
+#else
 #  include <__chrono/duration.h>
 #  include <__chrono/steady_clock.h>
 #  include <__chrono/time_point.h>
@@ -367,6 +368,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CONDITION_VARIABLE

diff  --git a/libcxx/include/coroutine b/libcxx/include/coroutine
index c39aa9a3da0ce2..d745844da8e9d1 100644
--- a/libcxx/include/coroutine
+++ b/libcxx/include/coroutine
@@ -38,8 +38,9 @@ struct suspend_always;
 
  */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/coroutine>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 20
@@ -66,6 +67,6 @@ struct suspend_always;
 #    include <limits>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_COROUTINE

diff  --git a/libcxx/include/csetjmp b/libcxx/include/csetjmp
index bd512720be0080..39ab035a5f3848 100644
--- a/libcxx/include/csetjmp
+++ b/libcxx/include/csetjmp
@@ -30,8 +30,9 @@ void longjmp(jmp_buf env, int val);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/csetjmp>
+#else
 #  include <__config>
 
 // <setjmp.h> is not provided by libc++
@@ -53,6 +54,6 @@ using ::longjmp _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSETJMP

diff  --git a/libcxx/include/csignal b/libcxx/include/csignal
index 92edf08f683e71..a15d17d3169da3 100644
--- a/libcxx/include/csignal
+++ b/libcxx/include/csignal
@@ -39,8 +39,9 @@ int raise(int sig);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/csignal>
+#else
 #  include <__config>
 
 // <signal.h> is not provided by libc++
@@ -63,6 +64,6 @@ using ::raise _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSIGNAL

diff  --git a/libcxx/include/cstdalign b/libcxx/include/cstdalign
index ab78344cd36c66..6a277e4673003b 100644
--- a/libcxx/include/cstdalign
+++ b/libcxx/include/cstdalign
@@ -20,8 +20,9 @@ Macros:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/__config>
+#else
 #  include <__config>
 
 // <stdalign.h> is not provided by libc++
@@ -53,6 +54,6 @@ using __standard_header_cstdalign _LIBCPP_DEPRECATED = void;
 using __use_standard_header_cstdalign                = __standard_header_cstdalign;
 
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDALIGN

diff  --git a/libcxx/include/cstdarg b/libcxx/include/cstdarg
index 1930fc95cf8512..069fe100880a2a 100644
--- a/libcxx/include/cstdarg
+++ b/libcxx/include/cstdarg
@@ -31,8 +31,9 @@ Types:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstdarg>
+#else
 #  include <__config>
 
 // <stdarg.h> is not provided by libc++
@@ -53,6 +54,6 @@ using ::va_list _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDARG

diff  --git a/libcxx/include/cstdbool b/libcxx/include/cstdbool
index a436c5c851a84a..a12954f07398cf 100644
--- a/libcxx/include/cstdbool
+++ b/libcxx/include/cstdbool
@@ -19,8 +19,9 @@ Macros:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstdbool>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -41,6 +42,6 @@ using __standard_header_cstdbool _LIBCPP_DEPRECATED = void;
 using __use_standard_header_cstdbool                = __standard_header_cstdbool;
 
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDBOOL

diff  --git a/libcxx/include/cstddef b/libcxx/include/cstddef
index 2e79d05243666d..d86d87bbbb9b50 100644
--- a/libcxx/include/cstddef
+++ b/libcxx/include/cstddef
@@ -33,8 +33,9 @@ Types:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstddef>
+#else
 #  include <__config>
 #  include <version>
 
@@ -57,6 +58,6 @@ Types:
 #  include <__cstddef/nullptr_t.h>
 #  include <__cstddef/ptr
diff _t.h>
 #  include <__cstddef/size_t.h>
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDDEF

diff  --git a/libcxx/include/cstdint b/libcxx/include/cstdint
index 594478930500c2..11839eeb071e5f 100644
--- a/libcxx/include/cstdint
+++ b/libcxx/include/cstdint
@@ -140,8 +140,9 @@ Types:
 }  // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstdint>
+#else
 #  include <__config>
 
 #  if __has_include(<stdint.h>)
@@ -192,6 +193,6 @@ using ::uintmax_t _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDINT

diff  --git a/libcxx/include/cstdio b/libcxx/include/cstdio
index 1b1a05d264b370..df9da1b4c87840 100644
--- a/libcxx/include/cstdio
+++ b/libcxx/include/cstdio
@@ -95,8 +95,9 @@ void perror(const char* s);
 }  // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstdio>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 
@@ -173,6 +174,6 @@ using ::vprintf _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDIO

diff  --git a/libcxx/include/cstdlib b/libcxx/include/cstdlib
index 03e68957f71e47..adeee29b93fd72 100644
--- a/libcxx/include/cstdlib
+++ b/libcxx/include/cstdlib
@@ -81,8 +81,9 @@ void *aligned_alloc(size_t alignment, size_t size);                       // C11
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstdlib>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 
@@ -153,6 +154,6 @@ using ::aligned_alloc _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTDLIB

diff  --git a/libcxx/include/cstring b/libcxx/include/cstring
index f4148858641061..4aa14feeec2809 100644
--- a/libcxx/include/cstring
+++ b/libcxx/include/cstring
@@ -56,8 +56,9 @@ size_t strlen(const char* s);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cstring>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 #  include <__type_traits/is_constant_evaluated.h>
@@ -103,6 +104,6 @@ using ::strlen _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CSTRING

diff  --git a/libcxx/include/ctgmath b/libcxx/include/ctgmath
index d8bb64032eca48..237f474f01c243 100644
--- a/libcxx/include/ctgmath
+++ b/libcxx/include/ctgmath
@@ -18,8 +18,9 @@
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ctgmath>
+#else
 #  include <cmath>
 #  include <complex>
 
@@ -39,6 +40,6 @@ using __use_standard_header_ctgmath = __standard_header_ctgmath;
 
 #  endif
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CTGMATH

diff  --git a/libcxx/include/ctime b/libcxx/include/ctime
index 6c5b0166f9e427..1e845a8de0930c 100644
--- a/libcxx/include/ctime
+++ b/libcxx/include/ctime
@@ -45,8 +45,9 @@ int timespec_get( struct timespec *ts, int base); // C++17
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ctime>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 
@@ -85,6 +86,6 @@ using ::timespec_get _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CTIME

diff  --git a/libcxx/include/ctype.h b/libcxx/include/ctype.h
index 611f94036a1bd8..066f45018bbf57 100644
--- a/libcxx/include/ctype.h
+++ b/libcxx/include/ctype.h
@@ -29,8 +29,9 @@ int tolower(int c);
 int toupper(int c);
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ctype.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -59,6 +60,6 @@ int toupper(int c);
 #    undef toupper
 
 #  endif
-#endif // 0
+#endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CTYPE_H

diff  --git a/libcxx/include/cuchar b/libcxx/include/cuchar
index 3ace72f1f8b1f6..38505eb336f847 100644
--- a/libcxx/include/cuchar
+++ b/libcxx/include/cuchar
@@ -36,8 +36,9 @@ size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cuchar>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 
@@ -71,8 +72,9 @@ using ::mbrtoc32 _LIBCPP_USING_IF_EXISTS;
 using ::c32rtomb _LIBCPP_USING_IF_EXISTS;
 
 #  endif // _LIBCPP_CXX03_LANG
-#endif   // 0
 
 _LIBCPP_END_NAMESPACE_STD
 
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+
 #endif // _LIBCPP_CUCHAR

diff  --git a/libcxx/include/cwchar b/libcxx/include/cwchar
index f97d9c43433a1f..4a4b052831a9ac 100644
--- a/libcxx/include/cwchar
+++ b/libcxx/include/cwchar
@@ -102,8 +102,9 @@ size_t wcsrtombs(char* restrict dst, const wchar_t** restrict src, size_t len,
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cwchar>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 #  include <__type_traits/copy_cv.h>
@@ -259,6 +260,6 @@ _LIBCPP_END_NAMESPACE_STD
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CWCHAR

diff  --git a/libcxx/include/cwctype b/libcxx/include/cwctype
index 848aadd8a1d11d..b7f9cbb835e328 100644
--- a/libcxx/include/cwctype
+++ b/libcxx/include/cwctype
@@ -49,8 +49,9 @@ wctrans_t wctrans(const char* property);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/cwctype>
+#else
 #  include <__config>
 #  include <cctype>
 
@@ -96,6 +97,6 @@ using ::wctrans _LIBCPP_USING_IF_EXISTS;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_CWCTYPE

diff  --git a/libcxx/include/deque b/libcxx/include/deque
index 63eb8365531069..883332f1ebdcb0 100644
--- a/libcxx/include/deque
+++ b/libcxx/include/deque
@@ -177,8 +177,9 @@ template <class T, class Allocator, class Predicate>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/deque>
+#else
 #  include <__algorithm/copy.h>
 #  include <__algorithm/copy_backward.h>
 #  include <__algorithm/copy_n.h>
@@ -2648,6 +2649,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_DEQUE

diff  --git a/libcxx/include/errno.h b/libcxx/include/errno.h
index 648d22e98846bb..692f00f022c53c 100644
--- a/libcxx/include/errno.h
+++ b/libcxx/include/errno.h
@@ -22,8 +22,9 @@
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/errno.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -397,6 +398,6 @@ static const int __elast2 = 105;
 #    endif
 
 #  endif // __cplusplus
-#endif   // 0
+#endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ERRNO_H

diff  --git a/libcxx/include/exception b/libcxx/include/exception
index 6565f1b4641d1d..74229cd16c0069 100644
--- a/libcxx/include/exception
+++ b/libcxx/include/exception
@@ -76,8 +76,9 @@ template <class E> void rethrow_if_nested(const E& e);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/exception>
+#else
 #  include <__config>
 #  include <__exception/exception.h>
 #  include <__exception/exception_ptr.h>
@@ -96,6 +97,6 @@ template <class E> void rethrow_if_nested(const E& e);
 #    include <new>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_EXCEPTION

diff  --git a/libcxx/include/execution b/libcxx/include/execution
index e8ef8b1e6ee79b..7c695997cd0479 100644
--- a/libcxx/include/execution
+++ b/libcxx/include/execution
@@ -32,8 +32,9 @@ namespace std {
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/execution>
+#else
 #  include <__config>
 #  include <__type_traits/is_execution_policy.h>
 #  include <__type_traits/is_same.h>
@@ -147,6 +148,6 @@ _LIBCPP_END_NAMESPACE_STD
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_EXECUTION

diff  --git a/libcxx/include/expected b/libcxx/include/expected
index ac2415ff5a62d8..38038d328f17d0 100644
--- a/libcxx/include/expected
+++ b/libcxx/include/expected
@@ -38,8 +38,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/expected>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 23
@@ -54,6 +55,6 @@ namespace std {
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_EXPECTED

diff  --git a/libcxx/include/experimental/iterator b/libcxx/include/experimental/iterator
index 5075de537b6ac2..8448654e8d94ca 100644
--- a/libcxx/include/experimental/iterator
+++ b/libcxx/include/experimental/iterator
@@ -52,8 +52,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/experimental/iterator>
+#else
 #  include <__config>
 #  include <__memory/addressof.h>
 #  include <__ostream/basic_ostream.h>
@@ -128,6 +129,6 @@ _LIBCPP_POP_MACROS
 #    include <iosfwd>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_EXPERIMENTAL_ITERATOR

diff  --git a/libcxx/include/experimental/memory b/libcxx/include/experimental/memory
index cb02ecb8e2bee7..1daa1cc4f3ed7c 100644
--- a/libcxx/include/experimental/memory
+++ b/libcxx/include/experimental/memory
@@ -49,8 +49,9 @@ public:
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/experimental/memory>
+#else
 #  include <__config>
 #  include <__cstddef/nullptr_t.h>
 #  include <__cstddef/size_t.h>
@@ -199,6 +200,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <cstddef>
 #    include <limits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif /* _LIBCPP_EXPERIMENTAL_MEMORY */

diff  --git a/libcxx/include/experimental/propagate_const b/libcxx/include/experimental/propagate_const
index 4d06e9f844acfa..8af3be366ad580 100644
--- a/libcxx/include/experimental/propagate_const
+++ b/libcxx/include/experimental/propagate_const
@@ -107,8 +107,9 @@
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/experimental/propagate_const>
+#else
 #  include <__config>
 #  include <__cstddef/nullptr_t.h>
 #  include <__cstddef/size_t.h>
@@ -491,6 +492,6 @@ _LIBCPP_POP_MACROS
 #    include <cstddef>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_EXPERIMENTAL_PROPAGATE_CONST

diff  --git a/libcxx/include/experimental/simd b/libcxx/include/experimental/simd
index 374ab57cdbca55..224cc75ba0eb0a 100644
--- a/libcxx/include/experimental/simd
+++ b/libcxx/include/experimental/simd
@@ -75,8 +75,9 @@ inline namespace parallelism_v2 {
 #  pragma GCC system_header
 #endif
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/experimental/simd>
+#else
 #  include <__config>
 #  include <experimental/__simd/aligned_tag.h>
 #  include <experimental/__simd/declaration.h>
@@ -90,6 +91,6 @@ inline namespace parallelism_v2 {
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif /* _LIBCPP_EXPERIMENTAL_SIMD */

diff  --git a/libcxx/include/experimental/type_traits b/libcxx/include/experimental/type_traits
index 0da95b79f8ab77..0353526bc8f66b 100644
--- a/libcxx/include/experimental/type_traits
+++ b/libcxx/include/experimental/type_traits
@@ -68,8 +68,9 @@ inline namespace fundamentals_v1 {
 
  */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/experimental/type_traits>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 14
@@ -155,6 +156,6 @@ _LIBCPP_END_NAMESPACE_LFTS
 #    endif
 
 #  endif /* _LIBCPP_STD_VER >= 14 */
-#endif   // 0
+#endif   // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif /* _LIBCPP_EXPERIMENTAL_TYPE_TRAITS */

diff  --git a/libcxx/include/experimental/utility b/libcxx/include/experimental/utility
index 1cb9c6a3617a8e..0c9b2b0c789ca4 100644
--- a/libcxx/include/experimental/utility
+++ b/libcxx/include/experimental/utility
@@ -30,8 +30,9 @@ inline namespace fundamentals_v1 {
 
  */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/experimental/utility>
+#else
 #  include <__config>
 #  include <utility>
 
@@ -48,6 +49,6 @@ _LIBCPP_END_NAMESPACE_LFTS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif /* _LIBCPP_EXPERIMENTAL_UTILITY */

diff  --git a/libcxx/include/ext/hash_map b/libcxx/include/ext/hash_map
index c9e35479b88c89..c0336620cf88f8 100644
--- a/libcxx/include/ext/hash_map
+++ b/libcxx/include/ext/hash_map
@@ -201,8 +201,9 @@ template <class Key, class T, class Hash, class Pred, class Alloc>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ext/hash_map>
+#else
 #  include <__config>
 #  include <__hash_table>
 #  include <algorithm>
@@ -870,6 +871,6 @@ inline _LIBCPP_HIDE_FROM_ABI bool operator!=(const hash_multimap<_Key, _Tp, _Has
 #    include <iterator>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_HASH_MAP

diff  --git a/libcxx/include/ext/hash_set b/libcxx/include/ext/hash_set
index 073fcf2fd9911b..2f86649d6e983f 100644
--- a/libcxx/include/ext/hash_set
+++ b/libcxx/include/ext/hash_set
@@ -192,8 +192,9 @@ template <class Value, class Hash, class Pred, class Alloc>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ext/hash_set>
+#else
 #  include <__config>
 #  include <__hash_table>
 #  include <algorithm>
@@ -582,6 +583,6 @@ inline _LIBCPP_HIDE_FROM_ABI bool operator!=(const hash_multiset<_Value, _Hash,
 #    include <iterator>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_HASH_SET

diff  --git a/libcxx/include/fenv.h b/libcxx/include/fenv.h
index dddf59d47f0214..157c24faa1042e 100644
--- a/libcxx/include/fenv.h
+++ b/libcxx/include/fenv.h
@@ -49,8 +49,9 @@ int feupdateenv(const fenv_t* envp);
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/fenv.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -112,6 +113,6 @@ extern "C++" {
 } // extern "C++"
 
 #  endif // defined(__cplusplus)
-#endif   // 0
+#endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FENV_H

diff  --git a/libcxx/include/filesystem b/libcxx/include/filesystem
index f6f5dcb1cc4053..f9eb0ea1e24d2f 100644
--- a/libcxx/include/filesystem
+++ b/libcxx/include/filesystem
@@ -533,8 +533,9 @@ inline constexpr bool std::ranges::enable_view<std::filesystem::recursive_direct
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/filesystem>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 17
@@ -575,6 +576,6 @@ inline constexpr bool std::ranges::enable_view<std::filesystem::recursive_direct
 #    include <new>
 #    include <system_error>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FILESYSTEM

diff  --git a/libcxx/include/flat_map b/libcxx/include/flat_map
index 1f2c204e2ef215..dbe5d8ee8f8c3c 100644
--- a/libcxx/include/flat_map
+++ b/libcxx/include/flat_map
@@ -37,8 +37,9 @@ namespace std {
       erase_if(flat_map<Key, T, Compare, KeyContainer, MappedContainer>& c, Predicate pred);
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/__config>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 23
@@ -56,6 +57,6 @@ namespace std {
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FLAT_MAP

diff  --git a/libcxx/include/float.h b/libcxx/include/float.h
index 2874323538b707..a6e79db912487a 100644
--- a/libcxx/include/float.h
+++ b/libcxx/include/float.h
@@ -70,8 +70,9 @@
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/float.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -93,6 +94,6 @@
 #    endif
 
 #  endif // __cplusplus
-#endif   // 0
+#endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FLOAT_H

diff  --git a/libcxx/include/format b/libcxx/include/format
index 6ac1e928b26a59..ecf8f7ce1eedba 100644
--- a/libcxx/include/format
+++ b/libcxx/include/format
@@ -191,8 +191,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/format>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 20
@@ -258,6 +259,6 @@ namespace std {
 #      include <cwchar>
 #    endif
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FORMAT

diff  --git a/libcxx/include/forward_list b/libcxx/include/forward_list
index 23e8e51632171e..c1ab155d5a133e 100644
--- a/libcxx/include/forward_list
+++ b/libcxx/include/forward_list
@@ -195,8 +195,9 @@ template <class T, class Allocator, class Predicate>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/forward_list>
+#else
 #  include <__algorithm/comp.h>
 #  include <__algorithm/lexicographical_compare.h>
 #  include <__algorithm/lexicographical_compare_three_way.h>
@@ -1586,6 +1587,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FORWARD_LIST

diff  --git a/libcxx/include/fstream b/libcxx/include/fstream
index 9722440808e365..f0e9425e0a53d9 100644
--- a/libcxx/include/fstream
+++ b/libcxx/include/fstream
@@ -186,8 +186,9 @@ typedef basic_fstream<wchar_t> wfstream;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/fstream>
+#else
 #  include <__algorithm/max.h>
 #  include <__assert>
 #  include <__config>
@@ -1585,6 +1586,6 @@ _LIBCPP_POP_MACROS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 23
 #    include <filesystem>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FSTREAM

diff  --git a/libcxx/include/functional b/libcxx/include/functional
index 69f71314f05148..4bb163fd1f33cf 100644
--- a/libcxx/include/functional
+++ b/libcxx/include/functional
@@ -527,8 +527,9 @@ POLICY:  For non-variadic implementations, the number of arguments is limited
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/functional>
+#else
 #  include <__config>
 
 #  include <__functional/binary_function.h>
@@ -596,6 +597,6 @@ POLICY:  For non-variadic implementations, the number of arguments is limited
 #    include <utility>
 #    include <vector>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FUNCTIONAL

diff  --git a/libcxx/include/future b/libcxx/include/future
index 3a612d80bc85c6..95a51fa425e411 100644
--- a/libcxx/include/future
+++ b/libcxx/include/future
@@ -362,8 +362,9 @@ template <class R, class Alloc> struct uses_allocator<packaged_task<R>, Alloc>;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/future>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -2084,6 +2085,6 @@ _LIBCPP_POP_MACROS
 #    include <system_error>
 #    include <thread>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_FUTURE

diff  --git a/libcxx/include/initializer_list b/libcxx/include/initializer_list
index 46ffb95f83a697..07c51f32fee7d8 100644
--- a/libcxx/include/initializer_list
+++ b/libcxx/include/initializer_list
@@ -42,8 +42,9 @@ template<class E> const E* end(initializer_list<E> il) noexcept; // constexpr in
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/initializer_list>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 #  include <version>
@@ -101,6 +102,6 @@ inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 const _Ep* end(initia
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_INITIALIZER_LIST

diff  --git a/libcxx/include/inttypes.h b/libcxx/include/inttypes.h
index 552324516c11ff..1869284550e907 100644
--- a/libcxx/include/inttypes.h
+++ b/libcxx/include/inttypes.h
@@ -235,8 +235,9 @@ uintmax_t wcstoumax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/inttypes.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -262,6 +263,6 @@ uintmax_t wcstoumax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int
 #    undef imaxdiv
 
 #  endif // __cplusplus
-#endif   // 0
+#endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_INTTYPES_H

diff  --git a/libcxx/include/iomanip b/libcxx/include/iomanip
index 84842dc3fa6ca2..a97b4a94d232ff 100644
--- a/libcxx/include/iomanip
+++ b/libcxx/include/iomanip
@@ -42,8 +42,9 @@ template <class charT, class traits, class Allocator>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/iomanip>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -563,6 +564,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <unordered_map>
 #    include <vector>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_IOMANIP

diff  --git a/libcxx/include/ios b/libcxx/include/ios
index 23e8fdf1a6075e..7c2ee83d4624bf 100644
--- a/libcxx/include/ios
+++ b/libcxx/include/ios
@@ -211,8 +211,9 @@ storage-class-specifier const error_category& iostream_category() noexcept;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ios>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -891,6 +892,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_IOS

diff  --git a/libcxx/include/iosfwd b/libcxx/include/iosfwd
index 3f8a4cd3d4d8c3..708134daf98c9d 100644
--- a/libcxx/include/iosfwd
+++ b/libcxx/include/iosfwd
@@ -105,8 +105,9 @@ using wosyncstream = basic_osyncstream<wchar_t>;  // C++20
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/iosfwd>
+#else
 #  include <__config>
 #  include <__fwd/fstream.h>
 #  include <__fwd/ios.h>
@@ -185,6 +186,6 @@ public:
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_IOSFWD

diff  --git a/libcxx/include/iostream b/libcxx/include/iostream
index 067a7c111f4374..0e83f0002ae6e6 100644
--- a/libcxx/include/iostream
+++ b/libcxx/include/iostream
@@ -33,8 +33,9 @@ extern wostream wclog;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/iostream>
+#else
 #  include <__config>
 #  include <version>
 
@@ -66,6 +67,6 @@ extern _LIBCPP_EXPORTED_FROM_ABI wostream wclog;
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_IOSTREAM

diff  --git a/libcxx/include/istream b/libcxx/include/istream
index c2edc9ab226082..4b177c41cc325e 100644
--- a/libcxx/include/istream
+++ b/libcxx/include/istream
@@ -158,8 +158,9 @@ template <class Stream, class T>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/istream>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -1383,6 +1384,6 @@ _LIBCPP_END_NAMESPACE_STD
 
 _LIBCPP_POP_MACROS
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ISTREAM

diff  --git a/libcxx/include/iterator b/libcxx/include/iterator
index b9bc1881106850..74ee712b945b33 100644
--- a/libcxx/include/iterator
+++ b/libcxx/include/iterator
@@ -679,8 +679,9 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/iterator>
+#else
 #  include <__config>
 #  include <__iterator/access.h>
 #  include <__iterator/advance.h>
@@ -753,6 +754,6 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_ITERATOR

diff  --git a/libcxx/include/latch b/libcxx/include/latch
index d21b689cc48152..471ef143e8d5a1 100644
--- a/libcxx/include/latch
+++ b/libcxx/include/latch
@@ -40,8 +40,9 @@ namespace std
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/latch>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -129,6 +130,6 @@ _LIBCPP_POP_MACROS
 #    include <atomic>
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_LATCH

diff  --git a/libcxx/include/limits b/libcxx/include/limits
index c27950f42106d9..1c1a0b29b71877 100644
--- a/libcxx/include/limits
+++ b/libcxx/include/limits
@@ -102,8 +102,9 @@ template<> class numeric_limits<cv long double>;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/limits>
+#else
 #  include <__config>
 #  include <__type_traits/is_arithmetic.h>
 #  include <__type_traits/is_signed.h>
@@ -535,6 +536,6 @@ _LIBCPP_POP_MACROS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_LIMITS

diff  --git a/libcxx/include/list b/libcxx/include/list
index a9d14272742bd4..5e2fd40d6ee9d2 100644
--- a/libcxx/include/list
+++ b/libcxx/include/list
@@ -197,8 +197,9 @@ template <class T, class Allocator, class Predicate>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/list>
+#else
 #  include <__algorithm/comp.h>
 #  include <__algorithm/equal.h>
 #  include <__algorithm/lexicographical_compare.h>
@@ -1749,6 +1750,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_LIST

diff  --git a/libcxx/include/locale b/libcxx/include/locale
index 8421dc696106a6..981f25ed1e98cf 100644
--- a/libcxx/include/locale
+++ b/libcxx/include/locale
@@ -187,8 +187,9 @@ template <class charT> class messages_byname;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/locale>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -3700,6 +3701,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_LOCALE

diff  --git a/libcxx/include/map b/libcxx/include/map
index 90f807f89bdcf6..76d32ad883d6a7 100644
--- a/libcxx/include/map
+++ b/libcxx/include/map
@@ -571,8 +571,9 @@ erase_if(multimap<Key, T, Compare, Allocator>& c, Predicate pred);  // C++20
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/map>
+#else
 #  include <__algorithm/equal.h>
 #  include <__algorithm/lexicographical_compare.h>
 #  include <__algorithm/lexicographical_compare_three_way.h>
@@ -2203,6 +2204,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_MAP

diff  --git a/libcxx/include/math.h b/libcxx/include/math.h
index c338d3225dd55d..de2dacde282c11 100644
--- a/libcxx/include/math.h
+++ b/libcxx/include/math.h
@@ -291,8 +291,9 @@ long double    truncl(long double x);
 
 */
 
-#  if 0
-#  else // 0
+#  if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#    include <__cxx03/math.h>
+#  else
 #    include <__config>
 
 #    if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -504,7 +505,7 @@ using std::__math::trunc;
 } // extern "C++"
 
 #    endif // __cplusplus
-#  endif   // 0
+#  endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #else // _LIBCPP_MATH_H
 

diff  --git a/libcxx/include/mdspan b/libcxx/include/mdspan
index 02582c6f39c15d..a67ed1834e3bde 100644
--- a/libcxx/include/mdspan
+++ b/libcxx/include/mdspan
@@ -408,8 +408,9 @@ namespace std {
 #ifndef _LIBCPP_MDSPAN
 #define _LIBCPP_MDSPAN
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/mdspan>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 23
@@ -427,6 +428,6 @@ namespace std {
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_MDSPAN

diff  --git a/libcxx/include/memory b/libcxx/include/memory
index 883666b9e1beff..fc62606ea0fd33 100644
--- a/libcxx/include/memory
+++ b/libcxx/include/memory
@@ -934,8 +934,9 @@ template<class Pointer = void, class Smart, class... Args>
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/memory>
+#else
 #  include <__config>
 #  include <__memory/addressof.h>
 #  include <__memory/align.h>
@@ -996,6 +997,6 @@ template<class Pointer = void, class Smart, class... Args>
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_MEMORY

diff  --git a/libcxx/include/memory_resource b/libcxx/include/memory_resource
index e852e96536c977..5464fc09c7cdcc 100644
--- a/libcxx/include/memory_resource
+++ b/libcxx/include/memory_resource
@@ -49,8 +49,9 @@ namespace std::pmr {
 
  */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/memory_resource>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 17
@@ -75,6 +76,6 @@ namespace std::pmr {
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <stdexcept>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif /* _LIBCPP_MEMORY_RESOURCE */

diff  --git a/libcxx/include/mutex b/libcxx/include/mutex
index b699439c5ce5a4..9b128e8710aaeb 100644
--- a/libcxx/include/mutex
+++ b/libcxx/include/mutex
@@ -186,8 +186,9 @@ template<class Callable, class ...Args>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/mutex>
+#else
 #  include <__chrono/steady_clock.h>
 #  include <__chrono/time_point.h>
 #  include <__condition_variable/condition_variable.h>
@@ -512,6 +513,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <typeinfo>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_MUTEX

diff  --git a/libcxx/include/new b/libcxx/include/new
index 8dd726f63a0e76..4d72ec27675c9e 100644
--- a/libcxx/include/new
+++ b/libcxx/include/new
@@ -86,8 +86,9 @@ void  operator delete[](void* ptr, void*) noexcept;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/new>
+#else
 #  include <__config>
 #  include <__new/align_val_t.h>
 #  include <__new/allocate.h>
@@ -118,6 +119,6 @@ void  operator delete[](void* ptr, void*) noexcept;
 #    include <cstdlib>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_NEW

diff  --git a/libcxx/include/numbers b/libcxx/include/numbers
index 41ee888ba8a9c7..7c9e38ecb9da90 100644
--- a/libcxx/include/numbers
+++ b/libcxx/include/numbers
@@ -58,8 +58,9 @@ namespace std::numbers {
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/numbers>
+#else
 #  include <__concepts/arithmetic.h>
 #  include <__config>
 #  include <version>
@@ -163,6 +164,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <cstddef>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_NUMBERS

diff  --git a/libcxx/include/numeric b/libcxx/include/numeric
index 6055524b049973..2f2b86136fb983 100644
--- a/libcxx/include/numeric
+++ b/libcxx/include/numeric
@@ -156,8 +156,9 @@ constexpr T saturate_cast(U x) noexcept;                    // freestanding, Sin
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/numeric>
+#else
 #  include <__config>
 
 #  include <__numeric/accumulate.h>
@@ -205,6 +206,6 @@ constexpr T saturate_cast(U x) noexcept;                    // freestanding, Sin
 #    include <optional>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_NUMERIC

diff  --git a/libcxx/include/optional b/libcxx/include/optional
index 1556b8b8fd942a..165e0f16cab904 100644
--- a/libcxx/include/optional
+++ b/libcxx/include/optional
@@ -177,8 +177,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/optional>
+#else
 #  include <__assert>
 #  include <__compare/compare_three_way_result.h>
 #  include <__compare/ordering.h>
@@ -1306,6 +1307,6 @@ _LIBCPP_POP_MACROS
 #    include <utility>
 #    include <variant>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_OPTIONAL

diff  --git a/libcxx/include/ostream b/libcxx/include/ostream
index 900863c035be7d..4a627a07a4a2fe 100644
--- a/libcxx/include/ostream
+++ b/libcxx/include/ostream
@@ -172,8 +172,9 @@ void vprint_nonunicode(ostream& os, string_view fmt, format_args args);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ostream>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -204,6 +205,6 @@ void vprint_nonunicode(ostream& os, string_view fmt, format_args args);
 #    include <stdexcept>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_OSTREAM

diff  --git a/libcxx/include/print b/libcxx/include/print
index 3d846aeab3a886..1794d6014efcd9 100644
--- a/libcxx/include/print
+++ b/libcxx/include/print
@@ -33,8 +33,9 @@ namespace std {
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/print>
+#else
 #  include <__assert>
 #  include <__concepts/same_as.h>
 #  include <__config>
@@ -401,6 +402,6 @@ _LIBCPP_HIDE_FROM_ABI inline void vprint_nonunicode(string_view __fmt, format_ar
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_PRINT

diff  --git a/libcxx/include/queue b/libcxx/include/queue
index bebea92fc74252..ff69d75591debf 100644
--- a/libcxx/include/queue
+++ b/libcxx/include/queue
@@ -254,8 +254,9 @@ template <class T, class Container, class Compare>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/queue>
+#else
 #  include <__algorithm/make_heap.h>
 #  include <__algorithm/pop_heap.h>
 #  include <__algorithm/push_heap.h>
@@ -954,6 +955,6 @@ _LIBCPP_POP_MACROS
 #    include <functional>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_QUEUE

diff  --git a/libcxx/include/random b/libcxx/include/random
index 08e9c384538f5f..a2fc2bd5197e57 100644
--- a/libcxx/include/random
+++ b/libcxx/include/random
@@ -1677,8 +1677,9 @@ class piecewise_linear_distribution
 } // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/random>
+#else
 #  include <__config>
 #  include <__random/bernoulli_distribution.h>
 #  include <__random/binomial_distribution.h>
@@ -1740,6 +1741,6 @@ class piecewise_linear_distribution
 #    include <type_traits>
 #    include <vector>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_RANDOM

diff  --git a/libcxx/include/ranges b/libcxx/include/ranges
index 2c6057e30420a1..9ef614d21f5251 100644
--- a/libcxx/include/ranges
+++ b/libcxx/include/ranges
@@ -380,8 +380,9 @@ namespace std {
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ranges>
+#else
 #  include <__config>
 
 #  if _LIBCPP_STD_VER >= 20
@@ -453,6 +454,6 @@ namespace std {
 #    include <iosfwd>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_RANGES

diff  --git a/libcxx/include/ratio b/libcxx/include/ratio
index 9e56eacae0f2d0..b35e2bd9dad654 100644
--- a/libcxx/include/ratio
+++ b/libcxx/include/ratio
@@ -81,8 +81,9 @@ using quetta = ratio <1'000'000'000'000'000'000'000'000'000'000, 1>; // Since C+
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/ratio>
+#else
 #  include <__config>
 #  include <__type_traits/integral_constant.h>
 #  include <climits>
@@ -493,6 +494,6 @@ _LIBCPP_POP_MACROS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_RATIO

diff  --git a/libcxx/include/regex b/libcxx/include/regex
index 1983ca9d9ff80c..15ec15a6985e2a 100644
--- a/libcxx/include/regex
+++ b/libcxx/include/regex
@@ -789,8 +789,9 @@ typedef regex_token_iterator<wstring::const_iterator> wsregex_token_iterator;
 } // std
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/regex>
+#else
 #  include <__algorithm/find.h>
 #  include <__algorithm/search.h>
 #  include <__assert>
@@ -5834,6 +5835,6 @@ _LIBCPP_POP_MACROS
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_REGEX

diff  --git a/libcxx/include/scoped_allocator b/libcxx/include/scoped_allocator
index c207ac07bdc4d7..94a35f64603ba4 100644
--- a/libcxx/include/scoped_allocator
+++ b/libcxx/include/scoped_allocator
@@ -109,8 +109,9 @@ template <class OuterA1, class OuterA2, class... InnerAllocs>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/scoped_allocator>
+#else
 #  include <__config>
 #  include <__memory/allocator_traits.h>
 #  include <__memory/uses_allocator_construction.h>
@@ -571,6 +572,6 @@ _LIBCPP_POP_MACROS
 #    include <type_traits>
 #    include <variant>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SCOPED_ALLOCATOR

diff  --git a/libcxx/include/semaphore b/libcxx/include/semaphore
index 82f9726a96f62c..4194dbe91b4810 100644
--- a/libcxx/include/semaphore
+++ b/libcxx/include/semaphore
@@ -45,8 +45,9 @@ using binary_semaphore = counting_semaphore<1>; // since C++20
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/semaphore>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -186,6 +187,6 @@ _LIBCPP_POP_MACROS
 #    include <atomic>
 #    include <cstddef>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SEMAPHORE

diff  --git a/libcxx/include/set b/libcxx/include/set
index c4b0b018f27c41..2784e82760d7ee 100644
--- a/libcxx/include/set
+++ b/libcxx/include/set
@@ -512,8 +512,9 @@ erase_if(multiset<Key, Compare, Allocator>& c, Predicate pred);  // C++20
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/set>
+#else
 #  include <__algorithm/equal.h>
 #  include <__algorithm/lexicographical_compare.h>
 #  include <__algorithm/lexicographical_compare_three_way.h>
@@ -1524,6 +1525,6 @@ _LIBCPP_POP_MACROS
 #    include <stdexcept>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SET

diff  --git a/libcxx/include/shared_mutex b/libcxx/include/shared_mutex
index a6615ea8962fd6..6738efeedb3c29 100644
--- a/libcxx/include/shared_mutex
+++ b/libcxx/include/shared_mutex
@@ -122,8 +122,9 @@ template <class Mutex>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/shared_mutex>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -462,6 +463,6 @@ _LIBCPP_POP_MACROS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <system_error>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SHARED_MUTEX

diff  --git a/libcxx/include/source_location b/libcxx/include/source_location
index faa6b0eeb6c003..bbbb86bc68c835 100644
--- a/libcxx/include/source_location
+++ b/libcxx/include/source_location
@@ -25,8 +25,9 @@ namespace std {
 }
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/source_location>
+#else
 #  include <__config>
 #  include <cstdint>
 #  include <version>
@@ -84,6 +85,6 @@ public:
 
 _LIBCPP_END_NAMESPACE_STD
 
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SOURCE_LOCATION

diff  --git a/libcxx/include/span b/libcxx/include/span
index 2d43d1d1079e44..5bb09ec515cea9 100644
--- a/libcxx/include/span
+++ b/libcxx/include/span
@@ -144,8 +144,9 @@ template<class R>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/span>
+#else
 #  include <__assert>
 #  include <__concepts/convertible_to.h>
 #  include <__concepts/equality_comparable.h>
@@ -640,6 +641,6 @@ _LIBCPP_POP_MACROS
 #    include <iterator>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SPAN

diff  --git a/libcxx/include/sstream b/libcxx/include/sstream
index 920c29dee62f3f..5dcfb446a5d6ad 100644
--- a/libcxx/include/sstream
+++ b/libcxx/include/sstream
@@ -312,8 +312,9 @@ typedef basic_stringstream<wchar_t> wstringstream;
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/sstream>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -1291,6 +1292,6 @@ _LIBCPP_POP_MACROS
 #    include <ostream>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SSTREAM

diff  --git a/libcxx/include/stack b/libcxx/include/stack
index da3dcf0216aeac..3ff3df2c9650fc 100644
--- a/libcxx/include/stack
+++ b/libcxx/include/stack
@@ -113,8 +113,9 @@ template <class T, class Container>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stack>
+#else
 #  include <__algorithm/ranges_copy.h>
 #  include <__config>
 #  include <__fwd/stack.h>
@@ -377,6 +378,6 @@ _LIBCPP_POP_MACROS
 #    include <functional>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STACK

diff  --git a/libcxx/include/stdatomic.h b/libcxx/include/stdatomic.h
index 8c96bd636dd45f..a0b46e3b7bc173 100644
--- a/libcxx/include/stdatomic.h
+++ b/libcxx/include/stdatomic.h
@@ -117,8 +117,9 @@ using std::atomic_signal_fence                         // see below
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stdatomic.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -237,6 +238,6 @@ using std::atomic_thread_fence _LIBCPP_USING_IF_EXISTS;
 #    endif
 
 #  endif // defined(__cplusplus)
-#endif   // 0
+#endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STDATOMIC_H

diff  --git a/libcxx/include/stdbool.h b/libcxx/include/stdbool.h
index 9f1779e992c72e..c34853b97b854c 100644
--- a/libcxx/include/stdbool.h
+++ b/libcxx/include/stdbool.h
@@ -19,8 +19,9 @@
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stdbool.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -38,6 +39,6 @@
 #    undef __bool_true_false_are_defined
 #    define __bool_true_false_are_defined 1
 #  endif
-#endif // 0
+#endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STDBOOL_H

diff  --git a/libcxx/include/stddef.h b/libcxx/include/stddef.h
index 66ad85fe631de9..46bed2a1e1a68e 100644
--- a/libcxx/include/stddef.h
+++ b/libcxx/include/stddef.h
@@ -24,8 +24,9 @@
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stddef.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -42,6 +43,6 @@
 #    ifdef __cplusplus
 typedef decltype(nullptr) nullptr_t;
 #    endif
-#  endif // 0
+#  endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STDDEF_H

diff  --git a/libcxx/include/stdexcept b/libcxx/include/stdexcept
index 58c55092026a92..85e11629bd6e3f 100644
--- a/libcxx/include/stdexcept
+++ b/libcxx/include/stdexcept
@@ -41,8 +41,9 @@ public:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stdexcept>
+#else
 #  include <__config>
 #  include <__exception/exception.h>
 #  include <__fwd/string.h>
@@ -286,6 +287,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <iosfwd>
 #    include <new>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STDEXCEPT

diff  --git a/libcxx/include/stdio.h b/libcxx/include/stdio.h
index 7c73671ade08f0..d1e57b08f5da47 100644
--- a/libcxx/include/stdio.h
+++ b/libcxx/include/stdio.h
@@ -87,8 +87,9 @@ int ferror(FILE* stream);
 void perror(const char* s);
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stdio.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -120,6 +121,6 @@ void perror(const char* s);
 #      undef getchar
 
 #    endif
-#  endif // 0
+#  endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STDIO_H

diff  --git a/libcxx/include/stdlib.h b/libcxx/include/stdlib.h
index b8a28809a951c4..e32b7b7d751b3e 100644
--- a/libcxx/include/stdlib.h
+++ b/libcxx/include/stdlib.h
@@ -73,8 +73,9 @@ void *aligned_alloc(size_t alignment, size_t size);                       // C11
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stdlib.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -147,7 +148,7 @@ inline _LIBCPP_HIDE_FROM_ABI lldiv_t div(long long __x, long long __y) _NOEXCEPT
 #        endif
 #      endif // _LIBCPP_MSVCRT
 } // extern "C++"
-#    endif // __cplusplus
-#  endif   // 0
+#    endif   // __cplusplus
+#  endif     // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STDLIB_H

diff  --git a/libcxx/include/stop_token b/libcxx/include/stop_token
index 6a6d1330248c7a..d240dd77a9136b 100644
--- a/libcxx/include/stop_token
+++ b/libcxx/include/stop_token
@@ -31,8 +31,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/stop_token>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -55,6 +56,6 @@ namespace std {
 #    include <cstddef>
 #    include <iosfwd>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STOP_TOKEN

diff  --git a/libcxx/include/streambuf b/libcxx/include/streambuf
index 12f6b319f70e96..7f02a9b3314110 100644
--- a/libcxx/include/streambuf
+++ b/libcxx/include/streambuf
@@ -107,8 +107,9 @@ protected:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/streambuf>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -448,6 +449,6 @@ _LIBCPP_POP_MACROS
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstdint>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STREAMBUF

diff  --git a/libcxx/include/string b/libcxx/include/string
index e96237488b80cb..7808f56f60017a 100644
--- a/libcxx/include/string
+++ b/libcxx/include/string
@@ -586,8 +586,9 @@ basic_string<char32_t> operator""s( const char32_t *str, size_t len );
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/string>
+#else
 #  include <__algorithm/max.h>
 #  include <__algorithm/min.h>
 #  include <__algorithm/remove.h>
@@ -2495,7 +2496,7 @@ basic_string<_CharT, _Traits, _Allocator>::__init_with_size(_InputIterator __fir
       __alloc_traits::deallocate(__alloc_, __get_long_pointer(), __get_long_cap());
     throw;
   }
-#  endif // _LIBCPP_HAS_EXCEPTIONS
+#  endif                       // _LIBCPP_HAS_EXCEPTIONS
   __annotate_new(__sz);
 }
 
@@ -4347,6 +4348,6 @@ _LIBCPP_POP_MACROS
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STRING

diff  --git a/libcxx/include/string.h b/libcxx/include/string.h
index 58a4bcbc3e7044..6bdcd6a6eecbdf 100644
--- a/libcxx/include/string.h
+++ b/libcxx/include/string.h
@@ -51,8 +51,9 @@ size_t strlen(const char* s);
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/string.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -109,6 +110,6 @@ inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_PREFERRED_OVERLOAD char* strstr(char* __s1,
 }
 } // extern "C++"
 #  endif
-#endif // 0
+#endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STRING_H

diff  --git a/libcxx/include/string_view b/libcxx/include/string_view
index a62d75a008c0c2..e79746318cfa6b 100644
--- a/libcxx/include/string_view
+++ b/libcxx/include/string_view
@@ -205,8 +205,9 @@ namespace std {
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/string_view>
+#else
 #  include <__algorithm/min.h>
 #  include <__assert>
 #  include <__config>
@@ -949,6 +950,6 @@ _LIBCPP_POP_MACROS
 #    include <iterator>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STRING_VIEW

diff  --git a/libcxx/include/strstream b/libcxx/include/strstream
index 81dbdf14d9e6a4..90d56694e7a6c3 100644
--- a/libcxx/include/strstream
+++ b/libcxx/include/strstream
@@ -129,8 +129,9 @@ private:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/strstream>
+#else
 #  include <__config>
 #  include <__ostream/basic_ostream.h>
 #  include <istream>
@@ -350,6 +351,6 @@ _LIBCPP_END_NAMESPACE_STD
 _LIBCPP_POP_MACROS
 
 #  endif // _LIBCPP_STD_VER < 26 || defined(_LIBCPP_ENABLE_CXX26_REMOVED_STRSTREAM) || defined(_LIBCPP_BUILDING_LIBRARY)
-#endif   // 0
+#endif   // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_STRSTREAM

diff  --git a/libcxx/include/syncstream b/libcxx/include/syncstream
index f801132d436b48..82761be765420c 100644
--- a/libcxx/include/syncstream
+++ b/libcxx/include/syncstream
@@ -117,8 +117,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/syncstream>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_LOCALIZATION
@@ -518,6 +519,6 @@ _LIBCPP_END_NAMESPACE_STD
 _LIBCPP_POP_MACROS
 
 #  endif // _LIBCPP_HAS_LOCALIZATION
-#endif   // 0
+#endif   // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SYNCSTREAM

diff  --git a/libcxx/include/system_error b/libcxx/include/system_error
index 351e26fd473500..4dadc0a6ab4838 100644
--- a/libcxx/include/system_error
+++ b/libcxx/include/system_error
@@ -144,8 +144,9 @@ template <> struct hash<std::error_condition>;
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/system_error>
+#else
 #  include <__config>
 #  include <__system_error/errc.h>
 #  include <__system_error/error_category.h>
@@ -169,6 +170,6 @@ template <> struct hash<std::error_condition>;
 #    include <limits>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_SYSTEM_ERROR

diff  --git a/libcxx/include/tgmath.h b/libcxx/include/tgmath.h
index 41cae5c2318c19..3f8f14fd579a93 100644
--- a/libcxx/include/tgmath.h
+++ b/libcxx/include/tgmath.h
@@ -17,8 +17,9 @@
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/tgmath.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -33,6 +34,6 @@
 #      include_next <tgmath.h>
 #    endif
 #  endif
-#endif // 0
+#endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_TGMATH_H

diff  --git a/libcxx/include/thread b/libcxx/include/thread
index 719ebe9a7a2376..029ed418e2070f 100644
--- a/libcxx/include/thread
+++ b/libcxx/include/thread
@@ -86,8 +86,9 @@ void sleep_for(const chrono::duration<Rep, Period>& rel_time);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/thread>
+#else
 #  include <__config>
 
 #  if _LIBCPP_HAS_THREADS
@@ -127,6 +128,6 @@ void sleep_for(const chrono::duration<Rep, Period>& rel_time);
 #    include <system_error>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_THREAD

diff  --git a/libcxx/include/tuple b/libcxx/include/tuple
index 035c67a12f8567..016cdda6decb86 100644
--- a/libcxx/include/tuple
+++ b/libcxx/include/tuple
@@ -210,8 +210,9 @@ template <class... Types>
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/tuple>
+#else
 #  include <__compare/common_comparison_category.h>
 #  include <__compare/ordering.h>
 #  include <__compare/synth_three_way.h>
@@ -1421,6 +1422,6 @@ _LIBCPP_POP_MACROS
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_TUPLE

diff  --git a/libcxx/include/type_traits b/libcxx/include/type_traits
index d7fa8c3ad8f2ef..ffcddb0176615a 100644
--- a/libcxx/include/type_traits
+++ b/libcxx/include/type_traits
@@ -424,8 +424,9 @@ namespace std
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/type_traits>
+#else
 #  include <__config>
 #  include <__type_traits/add_cv_quals.h>
 #  include <__type_traits/add_lvalue_reference.h>
@@ -529,6 +530,6 @@ namespace std
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #    pragma GCC system_header
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_TYPE_TRAITS

diff  --git a/libcxx/include/typeindex b/libcxx/include/typeindex
index 5ecba006ff1c12..76faee4bf199e1 100644
--- a/libcxx/include/typeindex
+++ b/libcxx/include/typeindex
@@ -45,8 +45,9 @@ struct hash<type_index>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/typeindex>
+#else
 #  include <__config>
 #  include <__functional/unary_function.h>
 #  include <typeinfo>
@@ -105,6 +106,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <new>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_TYPEINDEX

diff  --git a/libcxx/include/typeinfo b/libcxx/include/typeinfo
index 8d3ebea08d8ddb..799c6ebd5ecbbf 100644
--- a/libcxx/include/typeinfo
+++ b/libcxx/include/typeinfo
@@ -56,8 +56,9 @@ public:
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/typeinfo>
+#else
 #  include <__config>
 #  include <__cstddef/size_t.h>
 #  include <__exception/exception.h>
@@ -390,6 +391,6 @@ _LIBCPP_END_NAMESPACE_STD
 #    include <cstdlib>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_TYPEINFO

diff  --git a/libcxx/include/uchar.h b/libcxx/include/uchar.h
index 440e00511a6607..01e1d57db7454c 100644
--- a/libcxx/include/uchar.h
+++ b/libcxx/include/uchar.h
@@ -32,8 +32,9 @@ size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/uchar.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -54,6 +55,6 @@ size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
 #    endif
 
 #  endif // _LIBCPP_CXX03_LANG
-#endif   // 0
+#endif   // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_UCHAR_H

diff  --git a/libcxx/include/unordered_map b/libcxx/include/unordered_map
index e55b7b7ef14036..0ae41384917749 100644
--- a/libcxx/include/unordered_map
+++ b/libcxx/include/unordered_map
@@ -583,8 +583,9 @@ template <class Key, class T, class Hash, class Pred, class Alloc>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/unordered_map>
+#else
 #  include <__algorithm/is_permutation.h>
 #  include <__assert>
 #  include <__config>
@@ -2571,6 +2572,6 @@ _LIBCPP_POP_MACROS
 #    include <iterator>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_UNORDERED_MAP

diff  --git a/libcxx/include/unordered_set b/libcxx/include/unordered_set
index 6f243e0235ce9f..87f0a9f438eff2 100644
--- a/libcxx/include/unordered_set
+++ b/libcxx/include/unordered_set
@@ -531,8 +531,9 @@ template <class Value, class Hash, class Pred, class Alloc>
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/unordered_set>
+#else
 #  include <__algorithm/is_permutation.h>
 #  include <__assert>
 #  include <__config>
@@ -1843,6 +1844,6 @@ _LIBCPP_POP_MACROS
 #    include <stdexcept>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_UNORDERED_SET

diff  --git a/libcxx/include/utility b/libcxx/include/utility
index c761a83000f34c..fb8a6f81350beb 100644
--- a/libcxx/include/utility
+++ b/libcxx/include/utility
@@ -246,8 +246,9 @@ template <class T>
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/utility>
+#else
 #  include <__config>
 
 #  include <__utility/declval.h>
@@ -308,6 +309,6 @@ template <class T>
 #    include <iosfwd>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_UTILITY

diff  --git a/libcxx/include/valarray b/libcxx/include/valarray
index ef94dde9bc887c..d0b76ee06e796c 100644
--- a/libcxx/include/valarray
+++ b/libcxx/include/valarray
@@ -343,8 +343,9 @@ template <class T> unspecified2 end(const valarray<T>& v);
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/valarray>
+#else
 #  include <__algorithm/copy.h>
 #  include <__algorithm/count.h>
 #  include <__algorithm/fill.h>
@@ -3361,6 +3362,6 @@ _LIBCPP_POP_MACROS
 #    include <stdexcept>
 #    include <type_traits>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_VALARRAY

diff  --git a/libcxx/include/variant b/libcxx/include/variant
index 7d2788e2414eaa..3fa1b4b30f058c 100644
--- a/libcxx/include/variant
+++ b/libcxx/include/variant
@@ -212,8 +212,9 @@ namespace std {
 
 */
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/variant>
+#else
 #  include <__compare/common_comparison_category.h>
 #  include <__compare/compare_three_way_result.h>
 #  include <__compare/ordering.h>
@@ -1636,6 +1637,6 @@ _LIBCPP_POP_MACROS
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_VARIANT

diff  --git a/libcxx/include/vector b/libcxx/include/vector
index a35686f56b0d5c..9fa81dcb7e76e0 100644
--- a/libcxx/include/vector
+++ b/libcxx/include/vector
@@ -304,8 +304,9 @@ template<class T, class charT> requires is-vector-bool-reference<T> // Since C++
 
 // clang-format on
 
-#if 0
-#else // 0
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/vector>
+#else
 #  include <__config>
 
 #  include <__vector/comparison.h>
@@ -368,6 +369,6 @@ template<class T, class charT> requires is-vector-bool-reference<T> // Since C++
 #    include <typeinfo>
 #    include <utility>
 #  endif
-#endif // 0
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_VECTOR

diff  --git a/libcxx/include/version b/libcxx/include/version
index fc57aeade9daf2..23cffd960e5d38 100644
--- a/libcxx/include/version
+++ b/libcxx/include/version
@@ -269,11 +269,14 @@ __cpp_lib_void_t                                        201411L <type_traits>
 
 */
 
-#include <__config>
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/version>
+#else
+#  include <__config>
 
-#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
-#  pragma GCC system_header
-#endif
+#  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+#    pragma GCC system_header
+#  endif
 
 // clang-format off
 
@@ -581,6 +584,8 @@ __cpp_lib_void_t                                        201411L <type_traits>
 # define __cpp_lib_variant                              202306L
 #endif
 
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+
 // clang-format on
 
 #endif // _LIBCPP_VERSIONH

diff  --git a/libcxx/include/wchar.h b/libcxx/include/wchar.h
index 85f16fcf476f22..436027b7842aeb 100644
--- a/libcxx/include/wchar.h
+++ b/libcxx/include/wchar.h
@@ -94,8 +94,9 @@ size_t wcsrtombs(char* restrict dst, const wchar_t** restrict src, size_t len,
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/wchar.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -205,6 +206,6 @@ size_t wcsnrtombs(
 } // extern "C"
 #      endif // __cplusplus && (_LIBCPP_MSVCRT || __MVS__)
 #    endif   // _LIBCPP_HAS_WIDE_CHARACTERS
-#  endif     // 0
+#  endif     // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_WCHAR_H

diff  --git a/libcxx/include/wctype.h b/libcxx/include/wctype.h
index fb48d495e0392e..9a5b163ba43a98 100644
--- a/libcxx/include/wctype.h
+++ b/libcxx/include/wctype.h
@@ -44,8 +44,9 @@ wctrans_t wctrans(const char* property);
 
 */
 
-#if 0
-#else // 0
+#if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/wctype.h>
+#else
 #  include <__config>
 
 #  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
@@ -88,6 +89,6 @@ wctrans_t wctrans(const char* property);
 #    undef wctrans
 
 #  endif // __cplusplus
-#endif   // 0
+#endif   // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
 
 #endif // _LIBCPP_WCTYPE_H

diff  --git a/libcxx/test/libcxx/algorithms/half_positive.pass.cpp b/libcxx/test/libcxx/algorithms/half_positive.pass.cpp
index 40f46974195720..88a18e85929214 100644
--- a/libcxx/test/libcxx/algorithms/half_positive.pass.cpp
+++ b/libcxx/test/libcxx/algorithms/half_positive.pass.cpp
@@ -11,6 +11,8 @@
 // __half_positive divides an integer number by 2 as unsigned number for known types.
 // It can be an important optimization for lower bound, for example.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__algorithm/half_positive.h>
 #include <cassert>
 #include <cstddef>

diff  --git a/libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp b/libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
index 21e9003c30b704..390c6b6db190d7 100644
--- a/libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
+++ b/libcxx/test/libcxx/assertions/customize_verbose_abort.link-time.pass.cpp
@@ -12,6 +12,8 @@
 // failures when back-deploying.
 // XFAIL: availability-verbose_abort-missing
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__verbose_abort>
 #include <cstdlib>
 

diff  --git a/libcxx/test/libcxx/assertions/default_verbose_abort.pass.cpp b/libcxx/test/libcxx/assertions/default_verbose_abort.pass.cpp
index 0cc4b1e0052267..803868b7577949 100644
--- a/libcxx/test/libcxx/assertions/default_verbose_abort.pass.cpp
+++ b/libcxx/test/libcxx/assertions/default_verbose_abort.pass.cpp
@@ -9,6 +9,8 @@
 // Test that the default verbose termination function aborts the program.
 // XFAIL: availability-verbose_abort-missing
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__verbose_abort>
 #include <csignal>
 #include <cstdlib>

diff  --git a/libcxx/test/libcxx/assertions/modes/none.pass.cpp b/libcxx/test/libcxx/assertions/modes/none.pass.cpp
index 8332848c1a8e03..b64290a31a1298 100644
--- a/libcxx/test/libcxx/assertions/modes/none.pass.cpp
+++ b/libcxx/test/libcxx/assertions/modes/none.pass.cpp
@@ -11,6 +11,8 @@
 
 // REQUIRES: libcpp-hardening-mode=none
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__assert>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/assertions/single_expression.pass.cpp b/libcxx/test/libcxx/assertions/single_expression.pass.cpp
index 13253e4cb6ef5a..474edc9dc08337 100644
--- a/libcxx/test/libcxx/assertions/single_expression.pass.cpp
+++ b/libcxx/test/libcxx/assertions/single_expression.pass.cpp
@@ -10,6 +10,8 @@
 // This is useful so we can use them  in places that require an expression, such as
 // in a constructor initializer list.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__assert>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/atomics/atomics.syn/compatible_with_stdatomic.compile.pass.cpp b/libcxx/test/libcxx/atomics/atomics.syn/compatible_with_stdatomic.compile.pass.cpp
index a52459abb9e0a5..323072da14463b 100644
--- a/libcxx/test/libcxx/atomics/atomics.syn/compatible_with_stdatomic.compile.pass.cpp
+++ b/libcxx/test/libcxx/atomics/atomics.syn/compatible_with_stdatomic.compile.pass.cpp
@@ -8,6 +8,8 @@
 
 // UNSUPPORTED: no-threads
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // This test verifies that <stdatomic.h> redirects to <atomic>. As an extension,
 // libc++ enables this redirection even before C++23.
 

diff  --git a/libcxx/test/libcxx/clang_modules_include.gen.py b/libcxx/test/libcxx/clang_modules_include.gen.py
index dc815d9c772b5b..379ac22c8f47f5 100644
--- a/libcxx/test/libcxx/clang_modules_include.gen.py
+++ b/libcxx/test/libcxx/clang_modules_include.gen.py
@@ -52,6 +52,8 @@
 // TODO: Fix seemingly circular inclusion or <wchar.h> on AIX
 // UNSUPPORTED: LIBCXX-AIX-FIXME
 
+// UNSUPPORTED: FROZEN-CXX03-HEADERS-FIXME
+
 {lit_header_restrictions.get(header, '')}
 {lit_header_undeprecations.get(header, '')}
 

diff  --git a/libcxx/test/libcxx/containers/associative/tree_balance_after_insert.pass.cpp b/libcxx/test/libcxx/containers/associative/tree_balance_after_insert.pass.cpp
index c3d100e53711b3..a99f4fff1300e0 100644
--- a/libcxx/test/libcxx/containers/associative/tree_balance_after_insert.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/tree_balance_after_insert.pass.cpp
@@ -13,6 +13,8 @@
 // void
 // __tree_balance_after_insert(_NodePtr __root, _NodePtr __x)
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__tree>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp b/libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp
index 12289c84a9cc30..bebdcaaedf1037 100644
--- a/libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__tree>
 #include <map>
 #include <set>

diff  --git a/libcxx/test/libcxx/containers/associative/tree_left_rotate.pass.cpp b/libcxx/test/libcxx/containers/associative/tree_left_rotate.pass.cpp
index b766489adc692f..f8073d6233c9b3 100644
--- a/libcxx/test/libcxx/containers/associative/tree_left_rotate.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/tree_left_rotate.pass.cpp
@@ -13,6 +13,8 @@
 // void
 // __tree_left_rotate(_NodePtr __x);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__tree>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/containers/associative/tree_remove.pass.cpp b/libcxx/test/libcxx/containers/associative/tree_remove.pass.cpp
index e9afd845a7e31e..0b2d86722912eb 100644
--- a/libcxx/test/libcxx/containers/associative/tree_remove.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/tree_remove.pass.cpp
@@ -13,6 +13,8 @@
 // void
 // __tree_remove(_NodePtr __root, _NodePtr __z)
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__tree>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/containers/associative/tree_right_rotate.pass.cpp b/libcxx/test/libcxx/containers/associative/tree_right_rotate.pass.cpp
index 04d2b094aad695..16ca81fddc7dc3 100644
--- a/libcxx/test/libcxx/containers/associative/tree_right_rotate.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/tree_right_rotate.pass.cpp
@@ -13,6 +13,8 @@
 // void
 // __tree_right_rotate(_NodePtr __x);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__tree>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp b/libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp
index cea074a4e70f1f..55d42a8d017e1c 100644
--- a/libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp
@@ -12,6 +12,8 @@
 // unordered containers changes when bounded unique_ptr is enabled.
 // UNSUPPORTED: libcpp-has-abi-bounded-unique_ptr
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cstdint>
 #include <unordered_map>
 

diff  --git a/libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp b/libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp
index 2a112aff227d8e..bee2012bbea292 100644
--- a/libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp
+++ b/libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp
@@ -12,6 +12,8 @@
 // unordered containers changes when bounded unique_ptr is enabled.
 // UNSUPPORTED: libcpp-has-abi-bounded-unique_ptr
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cstdint>
 #include <unordered_set>
 

diff  --git a/libcxx/test/libcxx/containers/container_traits.compile.pass.cpp b/libcxx/test/libcxx/containers/container_traits.compile.pass.cpp
index 1452bfbaf3960e..22be2174879510 100644
--- a/libcxx/test/libcxx/containers/container_traits.compile.pass.cpp
+++ b/libcxx/test/libcxx/containers/container_traits.compile.pass.cpp
@@ -9,6 +9,8 @@
 // <__type_traits/container_traits.h>
 //
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__type_traits/container_traits.h>
 
 #include <deque>

diff  --git a/libcxx/test/libcxx/containers/unord/key_value_traits.pass.cpp b/libcxx/test/libcxx/containers/unord/key_value_traits.pass.cpp
index c5e420387fdaf4..4b389fa759f895 100644
--- a/libcxx/test/libcxx/containers/unord/key_value_traits.pass.cpp
+++ b/libcxx/test/libcxx/containers/unord/key_value_traits.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__hash_table>
 #include <unordered_map>
 #include <unordered_set>

diff  --git a/libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp b/libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
index 0b56c96f8d4e42..8a5d448dbf922b 100644
--- a/libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
+++ b/libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
@@ -18,6 +18,8 @@
 // If n <= 1, return n. If n is a power of 2, return n.
 // Otherwise, return the next power of 2.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__hash_table>
 #include <cassert>
 #include <cstdint>

diff  --git a/libcxx/test/libcxx/containers/unord/next_prime.pass.cpp b/libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
index 0efbe0342d0b62..17a29033856c92 100644
--- a/libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
+++ b/libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
@@ -16,6 +16,8 @@
 
 // If n == 0, return 0, else return the lowest prime greater than or equal to n
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__hash_table>
 #include <cassert>
 #include <cstddef>

diff  --git a/libcxx/test/libcxx/depr/depr.c.headers/extern_c.pass.cpp b/libcxx/test/libcxx/depr/depr.c.headers/extern_c.pass.cpp
index d0ac71739d7e3a..f756aacbc1cd5b 100644
--- a/libcxx/test/libcxx/depr/depr.c.headers/extern_c.pass.cpp
+++ b/libcxx/test/libcxx/depr/depr.c.headers/extern_c.pass.cpp
@@ -10,6 +10,8 @@
 // that we don't want to support and can't support with LSV enabled.
 // UNSUPPORTED: clang-modules-build
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // Sometimes C++'s <foo.h> headers get included within extern "C" contexts. This
 // is ill-formed (no diagnostic required), per [using.headers]p3, but we permit
 // it as an extension.

diff  --git a/libcxx/test/libcxx/header_inclusions.gen.py b/libcxx/test/libcxx/header_inclusions.gen.py
index 739caf915c09a0..e00cf180d17ad1 100644
--- a/libcxx/test/libcxx/header_inclusions.gen.py
+++ b/libcxx/test/libcxx/header_inclusions.gen.py
@@ -10,6 +10,7 @@
 # prescribed by the Standard.
 
 # RUN: %{python} %s %{libcxx-dir}/utils
+# END.
 
 import sys
 
@@ -45,6 +46,8 @@
     print(
         f"""\
 //--- {header}.compile.pass.cpp
+// UNSUPPORTED: FROZEN-CXX03-HEADERS-FIXME
+
 {lit_header_restrictions.get(header, '')}
 {lit_header_undeprecations.get(header, '')}
 

diff  --git a/libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp b/libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
index 2157b2eb3cdf5d..37ab176ea26a0f 100644
--- a/libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
+++ b/libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
@@ -15,6 +15,8 @@
 
 // UNSUPPORTED: no-wide-characters
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 
 std::basic_filebuf<char, std::char_traits<wchar_t> > f;

diff  --git a/libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp b/libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
index b77f6a02013124..f936d8db47af5b 100644
--- a/libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
+++ b/libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
@@ -15,6 +15,8 @@
 
 // UNSUPPORTED: no-wide-characters
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 
 std::basic_fstream<char, std::char_traits<wchar_t> > f;

diff  --git a/libcxx/test/libcxx/input.output/iostream.format/input.streams/traits_mismatch.verify.cpp b/libcxx/test/libcxx/input.output/iostream.format/input.streams/traits_mismatch.verify.cpp
index 435e1df6dc4ba7..7d713ed581631e 100644
--- a/libcxx/test/libcxx/input.output/iostream.format/input.streams/traits_mismatch.verify.cpp
+++ b/libcxx/test/libcxx/input.output/iostream.format/input.streams/traits_mismatch.verify.cpp
@@ -15,6 +15,8 @@
 
 // UNSUPPORTED: no-wide-characters
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <istream>
 #include <string>
 

diff  --git a/libcxx/test/libcxx/input.output/iostream.format/output.streams/traits_mismatch.verify.cpp b/libcxx/test/libcxx/input.output/iostream.format/output.streams/traits_mismatch.verify.cpp
index f947507b23a17a..445ddd1eb9e42e 100644
--- a/libcxx/test/libcxx/input.output/iostream.format/output.streams/traits_mismatch.verify.cpp
+++ b/libcxx/test/libcxx/input.output/iostream.format/output.streams/traits_mismatch.verify.cpp
@@ -15,6 +15,8 @@
 
 // UNSUPPORTED: no-wide-characters
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <ostream>
 #include <string>
 

diff  --git a/libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp b/libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
index d6caa3389b8fa5..2b6c3802a56b66 100644
--- a/libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
+++ b/libcxx/test/libcxx/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
@@ -8,6 +8,8 @@
 
 // <sstream>
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // How the constructors of basic_stringbuf initialize the buffer pointers is
 // not specified. For some constructors it's implementation defined whether the
 // pointers are set to nullptr. Libc++'s implementation directly uses the SSO

diff  --git a/libcxx/test/libcxx/input.output/string.streams/traits_mismatch.verify.cpp b/libcxx/test/libcxx/input.output/string.streams/traits_mismatch.verify.cpp
index 466ad70558fe59..89dc884c5da12f 100644
--- a/libcxx/test/libcxx/input.output/string.streams/traits_mismatch.verify.cpp
+++ b/libcxx/test/libcxx/input.output/string.streams/traits_mismatch.verify.cpp
@@ -16,6 +16,8 @@
 
 // UNSUPPORTED: no-wide-characters
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 
 std::basic_stringbuf<char, std::char_traits<wchar_t> > sb;

diff  --git a/libcxx/test/libcxx/iterators/aliasing_iterator.pass.cpp b/libcxx/test/libcxx/iterators/aliasing_iterator.pass.cpp
index 60587d5bfe5d7a..33774578e23371 100644
--- a/libcxx/test/libcxx/iterators/aliasing_iterator.pass.cpp
+++ b/libcxx/test/libcxx/iterators/aliasing_iterator.pass.cpp
@@ -8,6 +8,8 @@
 
 // ADDITIONAL_COMPILE_FLAGS(clang): -Wprivate-header
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__iterator/aliasing_iterator.h>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp b/libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
index 45d0cc3b95f90b..3fc735b441676c 100644
--- a/libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
+++ b/libcxx/test/libcxx/iterators/bounded_iter/arithmetic.pass.cpp
@@ -11,6 +11,8 @@
 //
 // Arithmetic operators
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__iterator/bounded_iter.h>
 #include <cstddef>
 

diff  --git a/libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp b/libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
index cef2157469c8f0..a12b77afa0db02 100644
--- a/libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
+++ b/libcxx/test/libcxx/iterators/bounded_iter/comparison.pass.cpp
@@ -11,6 +11,8 @@
 //
 // Comparison operators
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <concepts>
 #include <__iterator/bounded_iter.h>
 

diff  --git a/libcxx/test/libcxx/iterators/bounded_iter/pointer_traits.pass.cpp b/libcxx/test/libcxx/iterators/bounded_iter/pointer_traits.pass.cpp
index bfd779d644f51a..22ad8c6706d6fa 100644
--- a/libcxx/test/libcxx/iterators/bounded_iter/pointer_traits.pass.cpp
+++ b/libcxx/test/libcxx/iterators/bounded_iter/pointer_traits.pass.cpp
@@ -11,6 +11,8 @@
 //
 // std::pointer_traits specialization
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__iterator/bounded_iter.h>
 #include <cassert>
 #include <cstddef>

diff  --git a/libcxx/test/libcxx/iterators/bounded_iter/types.compile.pass.cpp b/libcxx/test/libcxx/iterators/bounded_iter/types.compile.pass.cpp
index 56ded9ae5ed21d..d205c5b03ee3f0 100644
--- a/libcxx/test/libcxx/iterators/bounded_iter/types.compile.pass.cpp
+++ b/libcxx/test/libcxx/iterators/bounded_iter/types.compile.pass.cpp
@@ -11,6 +11,8 @@
 //
 // Nested types
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__iterator/bounded_iter.h>
 #include <cstddef>
 #include <iterator>

diff  --git a/libcxx/test/libcxx/iterators/contiguous_iterators.conv.compile.pass.cpp b/libcxx/test/libcxx/iterators/contiguous_iterators.conv.compile.pass.cpp
index 372559594143ef..4d3690953070fd 100644
--- a/libcxx/test/libcxx/iterators/contiguous_iterators.conv.compile.pass.cpp
+++ b/libcxx/test/libcxx/iterators/contiguous_iterators.conv.compile.pass.cpp
@@ -15,6 +15,8 @@
 
 // Verify that libc++-wrapped iterators do not permit slicing conversion or construction.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <array>
 #include <span>
 #include <type_traits>

diff  --git a/libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp b/libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
index 479d40a5eb0883..ba2697c78986c7 100644
--- a/libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
+++ b/libcxx/test/libcxx/iterators/contiguous_iterators.verify.cpp
@@ -11,6 +11,8 @@
 
 // __bounded_iter<_Iter>
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // Verify that __bounded_iter does not accept non-contiguous iterators as determined by __libcpp_is_contiguous_iterator.
 // static_assert should be used, see https://github.com/llvm/llvm-project/issues/115002.
 // __wrap_iter cannot be so handled because it may directly wrap user-defined fancy pointers in libc++'s vector.

diff  --git a/libcxx/test/libcxx/iterators/iterator.primitives/iterator.operations/prev.verify.cpp b/libcxx/test/libcxx/iterators/iterator.primitives/iterator.operations/prev.verify.cpp
index da0a336815a5c8..ffef687723983f 100644
--- a/libcxx/test/libcxx/iterators/iterator.primitives/iterator.operations/prev.verify.cpp
+++ b/libcxx/test/libcxx/iterators/iterator.primitives/iterator.operations/prev.verify.cpp
@@ -8,6 +8,8 @@
 
 // std::prev
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <iterator>
 #include "test_iterators.h"
 

diff  --git a/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp b/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
index 37e3f8167051aa..b283c8aa06f0cb 100644
--- a/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
+++ b/libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
@@ -21,6 +21,8 @@
 // GCC doesn't support the aligned-allocation flags.
 // XFAIL: gcc
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // RUN: %{build} -faligned-allocation -fsized-deallocation
 // RUN: %{run}
 // RUN: %{build} -faligned-allocation -fno-sized-deallocation -DNO_SIZE

diff  --git a/libcxx/test/libcxx/lint/lint_cmakelists.sh.py b/libcxx/test/libcxx/lint/lint_cmakelists.sh.py
index 417f9acdbbdcda..286508c0d4f6df 100644
--- a/libcxx/test/libcxx/lint/lint_cmakelists.sh.py
+++ b/libcxx/test/libcxx/lint/lint_cmakelists.sh.py
@@ -20,7 +20,9 @@
     okay = True
     prevline = lines[1]
     for line in lines[2:]:
-        if line == "  )\n":
+        if line == "\n":
+            continue
+        if line == "# C++03 frozen headers\n":
             break
         if line < prevline:
             okay = False

diff  --git a/libcxx/test/libcxx/memory/allocation_guard.pass.cpp b/libcxx/test/libcxx/memory/allocation_guard.pass.cpp
index 493ebf044187c8..20c05b381ef0e7 100644
--- a/libcxx/test/libcxx/memory/allocation_guard.pass.cpp
+++ b/libcxx/test/libcxx/memory/allocation_guard.pass.cpp
@@ -12,6 +12,8 @@
 // To allow checking that self-move works correctly.
 // ADDITIONAL_COMPILE_FLAGS: -Wno-self-move
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // template<class _Alloc>
 // struct __allocation_guard;
 

diff  --git a/libcxx/test/libcxx/memory/swap_allocator.pass.cpp b/libcxx/test/libcxx/memory/swap_allocator.pass.cpp
index 311660290eaef0..f70f8134d1ddaf 100644
--- a/libcxx/test/libcxx/memory/swap_allocator.pass.cpp
+++ b/libcxx/test/libcxx/memory/swap_allocator.pass.cpp
@@ -7,6 +7,8 @@
 //===----------------------------------------------------------------------===//
 //
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // <memory>
 
 // template <typename _Alloc>

diff  --git a/libcxx/test/libcxx/numerics/bit.ops.pass.cpp b/libcxx/test/libcxx/numerics/bit.ops.pass.cpp
index 7f502d6e01d1ea..1bf9d3890f45fb 100644
--- a/libcxx/test/libcxx/numerics/bit.ops.pass.cpp
+++ b/libcxx/test/libcxx/numerics/bit.ops.pass.cpp
@@ -9,6 +9,8 @@
 // Test the __XXXX routines in the <bit> header.
 // These are not supposed to be exhaustive tests, just sanity checks.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__bit/bit_log2.h>
 #include <__bit/countl.h>
 #include <__bit/rotate.h>

diff  --git a/libcxx/test/libcxx/numerics/clamp_to_integral.pass.cpp b/libcxx/test/libcxx/numerics/clamp_to_integral.pass.cpp
index aed78f9cddf846..68d55afa1f2801 100644
--- a/libcxx/test/libcxx/numerics/clamp_to_integral.pass.cpp
+++ b/libcxx/test/libcxx/numerics/clamp_to_integral.pass.cpp
@@ -12,6 +12,8 @@
 // closest representable value for the specified integer type, or
 // numeric_limits<IntT>::max()/min() if the value isn't representable.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__random/clamp_to_integral.h>
 #include <cassert>
 #include <cmath>

diff  --git a/libcxx/test/libcxx/numerics/complex.number/cmplx.over.pow.pass.cpp b/libcxx/test/libcxx/numerics/complex.number/cmplx.over.pow.pass.cpp
index 1c790c283e4387..8c1b3a17c669f4 100644
--- a/libcxx/test/libcxx/numerics/complex.number/cmplx.over.pow.pass.cpp
+++ b/libcxx/test/libcxx/numerics/complex.number/cmplx.over.pow.pass.cpp
@@ -8,6 +8,8 @@
 
 // <complex>
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 //  template<class T, class U> complex<__promote<T, U>::type> pow(const complex<T>&, const U&);
 //  template<class T, class U> complex<__promote<T, U>::type> pow(const complex<T>&, const complex<U>&);
 //  template<class T, class U> complex<__promote<T, U>::type> pow(const T&, const complex<U>&);

diff  --git a/libcxx/test/libcxx/selftest/test_macros.pass.cpp b/libcxx/test/libcxx/selftest/test_macros.pass.cpp
index caa31ba333d3c1..9bcf7cf9a31f52 100644
--- a/libcxx/test/libcxx/selftest/test_macros.pass.cpp
+++ b/libcxx/test/libcxx/selftest/test_macros.pass.cpp
@@ -7,6 +7,9 @@
 //===----------------------------------------------------------------------===//
 //
 // Test the "test_macros.h" header.
+
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__config>
 #include "test_macros.h"
 

diff  --git a/libcxx/test/libcxx/strings/c.strings/constexpr_memmove.pass.cpp b/libcxx/test/libcxx/strings/c.strings/constexpr_memmove.pass.cpp
index bdc18448d03a43..2009cbe28a91f2 100644
--- a/libcxx/test/libcxx/strings/c.strings/constexpr_memmove.pass.cpp
+++ b/libcxx/test/libcxx/strings/c.strings/constexpr_memmove.pass.cpp
@@ -19,6 +19,8 @@
 // and is_trivially_XXX_assignable), so we use some funky types to test these
 // corner cases.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__string/constexpr_c_functions.h>
 #include <cassert>
 #include <cstdint>

diff  --git a/libcxx/test/libcxx/transitive_includes.gen.py b/libcxx/test/libcxx/transitive_includes.gen.py
index f01dbac26a8e8a..6f992404366327 100644
--- a/libcxx/test/libcxx/transitive_includes.gen.py
+++ b/libcxx/test/libcxx/transitive_includes.gen.py
@@ -90,6 +90,8 @@
 // TODO: Figure out why <stdatomic.h> doesn't work on FreeBSD
 // UNSUPPORTED: LIBCXX-FREEBSD-FIXME
 
+// UNSUPPORTED: FROZEN-CXX03-HEADERS-FIXME
+
 // RUN: mkdir %t
 // RUN: %{{cxx}} %s %{{flags}} %{{compile_flags}} --trace-includes -fshow-skipped-includes --preprocess > /dev/null 2> %t/trace-includes.txt
 // RUN: %{{python}} %{{libcxx-dir}}/test/libcxx/transitive_includes/to_csv.py %t/trace-includes.txt > %t/actual_transitive_includes.csv

diff  --git a/libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp b/libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp
index 51e3a8534baea5..67a4dccb0f5fef 100644
--- a/libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp
+++ b/libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__type_traits/datasizeof.h>
 #include <cstdint>
 #include <type_traits>

diff  --git a/libcxx/test/libcxx/type_traits/is_constant_evaluated.pass.cpp b/libcxx/test/libcxx/type_traits/is_constant_evaluated.pass.cpp
index 5a779c0e96e210..a538c52a534e7f 100644
--- a/libcxx/test/libcxx/type_traits/is_constant_evaluated.pass.cpp
+++ b/libcxx/test/libcxx/type_traits/is_constant_evaluated.pass.cpp
@@ -14,6 +14,8 @@
 // returns false when there's no constant evaluation support from the compiler.
 //  as well as when called not in a constexpr context
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__type_traits/is_constant_evaluated.h>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/type_traits/is_trivially_comparable.compile.pass.cpp b/libcxx/test/libcxx/type_traits/is_trivially_comparable.compile.pass.cpp
index e2be399456b1bc..e9b53080fcd6d6 100644
--- a/libcxx/test/libcxx/type_traits/is_trivially_comparable.compile.pass.cpp
+++ b/libcxx/test/libcxx/type_traits/is_trivially_comparable.compile.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__type_traits/conditional.h>
 #include <__type_traits/is_equality_comparable.h>
 #include <__type_traits/is_signed.h>

diff  --git a/libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp b/libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
index 110180ffa055a9..674df1d0219057 100644
--- a/libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
+++ b/libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__type_traits/is_trivially_relocatable.h>
 #include <array>
 #include <deque>

diff  --git a/libcxx/test/libcxx/utilities/exception_guard.odr.sh.cpp b/libcxx/test/libcxx/utilities/exception_guard.odr.sh.cpp
index f6b8a29d368211..fb51a4bf4ed273 100644
--- a/libcxx/test/libcxx/utilities/exception_guard.odr.sh.cpp
+++ b/libcxx/test/libcxx/utilities/exception_guard.odr.sh.cpp
@@ -9,6 +9,8 @@
 // This test relies on `typeid` and thus requires `-frtti`.
 // UNSUPPORTED: no-rtti
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // Make sure that we don't get ODR violations with __exception_guard when
 // linking together TUs compiled with 
diff erent values of -f[no-]exceptions.
 

diff  --git a/libcxx/test/libcxx/utilities/is_pointer_in_range.pass.cpp b/libcxx/test/libcxx/utilities/is_pointer_in_range.pass.cpp
index fc4d3a9800d119..b0a27c79287d40 100644
--- a/libcxx/test/libcxx/utilities/is_pointer_in_range.pass.cpp
+++ b/libcxx/test/libcxx/utilities/is_pointer_in_range.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__utility/is_pointer_in_range.h>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/utilities/is_valid_range.pass.cpp b/libcxx/test/libcxx/utilities/is_valid_range.pass.cpp
index 345e2feeda81c7..cb800aee5674bb 100644
--- a/libcxx/test/libcxx/utilities/is_valid_range.pass.cpp
+++ b/libcxx/test/libcxx/utilities/is_valid_range.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__utility/is_valid_range.h>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp b/libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp
index 89f08088921d59..66c25b1d756385 100644
--- a/libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp
+++ b/libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp
@@ -7,6 +7,8 @@
 //===----------------------------------------------------------------------===//
 //
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include "test_macros.h"
 
 TEST_CLANG_DIAGNOSTIC_IGNORED("-Wprivate-header")

diff  --git a/libcxx/test/libcxx/utilities/no_destroy.pass.cpp b/libcxx/test/libcxx/utilities/no_destroy.pass.cpp
index 9a874a64075372..8693bb17089dc3 100644
--- a/libcxx/test/libcxx/utilities/no_destroy.pass.cpp
+++ b/libcxx/test/libcxx/utilities/no_destroy.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <__utility/no_destroy.h>
 #include <cassert>
 

diff  --git a/libcxx/test/libcxx/utilities/template.bitset/includes.pass.cpp b/libcxx/test/libcxx/utilities/template.bitset/includes.pass.cpp
index 214b0eff8d9d26..ae8464ac946a96 100644
--- a/libcxx/test/libcxx/utilities/template.bitset/includes.pass.cpp
+++ b/libcxx/test/libcxx/utilities/template.bitset/includes.pass.cpp
@@ -8,6 +8,8 @@
 
 // test that <bitset> includes <string>, <stdexcept> and <iosfwd>
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <bitset>
 
 #include "test_macros.h"

diff  --git a/libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp b/libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp
index 097e05f29cebd1..bae08241090712 100644
--- a/libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp
+++ b/libcxx/test/libcxx/utilities/utility/private_constructor_tag.compile.pass.cpp
@@ -6,6 +6,8 @@
 //
 //===----------------------------------------------------------------------===//
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // struct __private_constructor_tag{};
 
 // The private constructor tag is intended to be a trivial type that can easily

diff  --git a/libcxx/test/std/containers/sequences/array/array.fill/fill.verify.cpp b/libcxx/test/std/containers/sequences/array/array.fill/fill.verify.cpp
index da16fd4626632d..d82d0d6249b00b 100644
--- a/libcxx/test/std/containers/sequences/array/array.fill/fill.verify.cpp
+++ b/libcxx/test/std/containers/sequences/array/array.fill/fill.verify.cpp
@@ -10,6 +10,8 @@
 
 // void fill(const T& u);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <array>
 #include <cassert>
 

diff  --git a/libcxx/test/std/containers/sequences/array/array.swap/swap.verify.cpp b/libcxx/test/std/containers/sequences/array/array.swap/swap.verify.cpp
index 03cfccac80b738..7816b26578246f 100644
--- a/libcxx/test/std/containers/sequences/array/array.swap/swap.verify.cpp
+++ b/libcxx/test/std/containers/sequences/array/array.swap/swap.verify.cpp
@@ -10,6 +10,8 @@
 
 // void swap(array& a);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <array>
 #include <cassert>
 

diff  --git a/libcxx/test/std/containers/sequences/array/array.tuple/get.verify.cpp b/libcxx/test/std/containers/sequences/array/array.tuple/get.verify.cpp
index d776d72b054670..f3a425e6537cb4 100644
--- a/libcxx/test/std/containers/sequences/array/array.tuple/get.verify.cpp
+++ b/libcxx/test/std/containers/sequences/array/array.tuple/get.verify.cpp
@@ -10,6 +10,8 @@
 
 // template <size_t I, class T, size_t N> T& get(array<T, N>& a);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // Prevent -Warray-bounds from issuing a diagnostic when testing with clang verify.
 // ADDITIONAL_COMPILE_FLAGS(gcc-style-warnings): -Wno-array-bounds
 

diff  --git a/libcxx/test/std/containers/sequences/array/array.tuple/tuple_element.verify.cpp b/libcxx/test/std/containers/sequences/array/array.tuple/tuple_element.verify.cpp
index 168467a6ed3611..b5c852225e7df6 100644
--- a/libcxx/test/std/containers/sequences/array/array.tuple/tuple_element.verify.cpp
+++ b/libcxx/test/std/containers/sequences/array/array.tuple/tuple_element.verify.cpp
@@ -10,6 +10,8 @@
 
 // tuple_element<I, array<T, N> >::type
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <array>
 #include <cassert>
 

diff  --git a/libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp b/libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp
index 7ba56577d1bb76..53356b4c7eee40 100644
--- a/libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp
+++ b/libcxx/test/std/containers/sequences/array/size_and_alignment.compile.pass.cpp
@@ -14,6 +14,8 @@
 // Make sure std::array<T, N> has the correct object size and alignment.
 // This test is mostly meant to catch subtle ABI-breaking regressions.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // Ignore error about requesting a large alignment not being ABI compatible with older AIX systems.
 #if defined(_AIX)
 #  pragma clang diagnostic ignored "-Waix-compat"

diff  --git a/libcxx/test/std/containers/sequences/forwardlist/types.pass.cpp b/libcxx/test/std/containers/sequences/forwardlist/types.pass.cpp
index 54766013d907d3..116891d4980be9 100644
--- a/libcxx/test/std/containers/sequences/forwardlist/types.pass.cpp
+++ b/libcxx/test/std/containers/sequences/forwardlist/types.pass.cpp
@@ -24,6 +24,8 @@
 //   ...
 // };
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <forward_list>
 #include <type_traits>
 

diff  --git a/libcxx/test/std/containers/sequences/list/types.pass.cpp b/libcxx/test/std/containers/sequences/list/types.pass.cpp
index 0c0a127bd76f9c..a2d49080f1bcbb 100644
--- a/libcxx/test/std/containers/sequences/list/types.pass.cpp
+++ b/libcxx/test/std/containers/sequences/list/types.pass.cpp
@@ -21,6 +21,8 @@
 //     typedef typename allocator_type::pointer pointer;
 //     typedef typename allocator_type::const_pointer const_pointer;
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <list>
 #include <type_traits>
 

diff  --git a/libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp b/libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
index 679eec24137935..00de05347bfd92 100644
--- a/libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
+++ b/libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
@@ -11,6 +11,8 @@
 // (bug report: https://llvm.org/PR58392)
 // Check that vector constructors don't leak memory when an operation inside the constructor throws an exception
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cstddef>
 #include <memory>
 #include <type_traits>

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
index d15276b440157c..d2efaf1561631f 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_fstream();
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 
 #include "test_macros.h"

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
index 95a04bdfccdbcb..153487898e1578 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_fstream(basic_fstream&& rhs);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
index 2e0ebcd684d798..ca226242773ad3 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
@@ -18,6 +18,8 @@
 
 // XFAIL: LIBCXX-AIX-FIXME
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
index ca0921a00b9b60..28cefc77d6a902 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
@@ -13,6 +13,8 @@
 
 // explicit basic_fstream(const string& s, ios_base::openmode mode = ios_base::in|ios_base::out);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
index 70d1efca20c655..256380d2c164a0 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_ifstream();
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 
 #include "test_macros.h"

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
index 81ec800954cc27..c8be388f406986 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
@@ -8,6 +8,8 @@
 
 // FILE_DEPENDENCIES: test.dat
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // <fstream>
 
 // template <class charT, class traits = char_traits<charT> >

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
index 6bbe6f1ff77545..711ab2a74b516b 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
@@ -8,6 +8,8 @@
 
 // FILE_DEPENDENCIES: test.dat
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // <fstream>
 
 // template <class charT, class traits = char_traits<charT> >

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
index e1a9b53da1348d..d4bbb3c0cabfce 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
@@ -15,6 +15,8 @@
 
 // explicit basic_ifstream(const string& s, ios_base::openmode mode = ios_base::in);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
index a7b0918f793653..4cda1db438342e 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_ofstream();
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 
 #include "test_macros.h"

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
index ec02fa2621c199..501a4c90ca3feb 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_ofstream(basic_ofstream&& rhs);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
index fbb03f1e858411..1b5a55df737177 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
@@ -18,6 +18,8 @@
 
 // XFAIL: LIBCXX-AIX-FIXME
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 #include <ios>

diff  --git a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
index 33a7e9b2b6f50c..bb18c88bd326e6 100644
--- a/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
+++ b/libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
@@ -13,6 +13,8 @@
 
 // explicit basic_ofstream(const string& s, ios_base::openmode mode = ios_base::out);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <fstream>
 #include <cassert>
 #include <ios>

diff  --git a/libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp b/libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
index d78f7df8f6b5ee..768922192038b0 100644
--- a/libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
+++ b/libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
@@ -15,6 +15,8 @@
 
 // basic_ios& copyfmt(const basic_ios& rhs);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <ios>
 #include <memory>
 #include <streambuf>

diff  --git a/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp b/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
index 8c73df42ae4bec..8cd23d45598b8f 100644
--- a/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
@@ -15,6 +15,8 @@
 // basic_istringstream() : basic_istringstream(ios_base::in) {}           // C++20
 // explicit basic_istringstream(ios_base::openmode which);                // C++20
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp b/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
index 00ac7cc6414e9b..1af3304d089717 100644
--- a/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_istringstream(basic_istringstream&& rhs);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp b/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
index 4a5965e7e96e90..7755dd926c2f68 100644
--- a/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
@@ -14,6 +14,8 @@
 // explicit basic_istringstream(const basic_string<charT,traits,allocator>& str,
 //                              ios_base::openmode which = ios_base::in);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp b/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
index a6b98a4e362931..eb248a7801a3c1 100644
--- a/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
@@ -15,6 +15,8 @@
 // basic_ostringstream() : basic_ostringstream(ios_base::out) {}           // C++20
 // explicit basic_ostringstream(ios_base::openmode which);                 // C++20
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp b/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
index 596a3e7d535844..62ece7b63b31ce 100644
--- a/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_ostringstream(basic_ostringstream&& rhs);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp b/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
index 9e9405ad492175..bbec8f79a1862a 100644
--- a/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
@@ -14,6 +14,8 @@
 // explicit basic_ostringstream(const basic_string<charT,traits,allocator>& str,
 //                              ios_base::openmode which = ios_base::in);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp b/libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
index d131f5c9a6fa73..dac43967d815f6 100644
--- a/libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
@@ -15,6 +15,8 @@
 // basic_stringbuf() : basic_stringbuf(ios_base::in | ios_base::out) {}               // C++20
 // explicit basic_stringbuf(ios_base::openmode which);                                // C++20
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp b/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
index 4f9e7e026c50f2..0e535814ae54ee 100644
--- a/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
@@ -15,6 +15,8 @@
 // basic_stringstream() : basic_stringstream(ios_base::out | ios_base::in) {}            // C++20
 // explicit basic_stringstream(ios_base::openmode which);                                // C++20
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp b/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
index 0702d9a278d3cb..e905f5f7c686a5 100644
--- a/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
@@ -13,6 +13,8 @@
 
 // basic_stringstream(basic_stringstream&& rhs);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp b/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
index 08880878361da4..d4fe18afbd28fa 100644
--- a/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
+++ b/libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
@@ -14,6 +14,8 @@
 // explicit basic_stringstream(const basic_string<charT,traits,Allocator>& str,
 //                             ios_base::openmode which = ios_base::out|ios_base::in);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <sstream>
 #include <cassert>
 

diff  --git a/libcxx/test/std/language.support/support.runtime/cstdalign.compile.pass.cpp b/libcxx/test/std/language.support/support.runtime/cstdalign.compile.pass.cpp
index fbbaf9b2d136f9..69296dfa501216 100644
--- a/libcxx/test/std/language.support/support.runtime/cstdalign.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.runtime/cstdalign.compile.pass.cpp
@@ -10,6 +10,8 @@
 
 // ADDITIONAL_COMPILE_FLAGS: -D_LIBCPP_DISABLE_DEPRECATION_WARNINGS
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cstdalign>
 
 #ifndef __alignas_is_defined

diff  --git a/libcxx/test/std/numerics/c.math/isnormal.pass.cpp b/libcxx/test/std/numerics/c.math/isnormal.pass.cpp
index 76c3d13520d996..03b086fa3f48e7 100644
--- a/libcxx/test/std/numerics/c.math/isnormal.pass.cpp
+++ b/libcxx/test/std/numerics/c.math/isnormal.pass.cpp
@@ -11,6 +11,8 @@
 // We don't control the implementation on windows
 // UNSUPPORTED: windows
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cassert>
 #include <cmath>
 #include <limits>

diff  --git a/libcxx/test/std/numerics/c.math/signbit.pass.cpp b/libcxx/test/std/numerics/c.math/signbit.pass.cpp
index a8a566f7de6434..cbad968a8aa203 100644
--- a/libcxx/test/std/numerics/c.math/signbit.pass.cpp
+++ b/libcxx/test/std/numerics/c.math/signbit.pass.cpp
@@ -14,6 +14,8 @@
 // These compilers don't support constexpr `__builtin_signbit` yet.
 // UNSUPPORTED: clang-17, clang-18, clang-19, apple-clang-15, apple-clang-16
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cassert>
 #include <cmath>
 #include <limits>

diff  --git a/libcxx/test/std/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp b/libcxx/test/std/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp
index a5087817223c52..2f9f6360a8b8eb 100644
--- a/libcxx/test/std/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp
+++ b/libcxx/test/std/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp
@@ -18,6 +18,8 @@
 //                      regex_constants::match_flag_type m =
 //                                              regex_constants::match_default);
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <regex>
 #include <cassert>
 #include <iterator>

diff  --git a/libcxx/test/std/strings/basic.string/char.bad.verify.cpp b/libcxx/test/std/strings/basic.string/char.bad.verify.cpp
index bedc5f19a6a881..c206c1ce8df45d 100644
--- a/libcxx/test/std/strings/basic.string/char.bad.verify.cpp
+++ b/libcxx/test/std/strings/basic.string/char.bad.verify.cpp
@@ -9,6 +9,8 @@
 // <string>
 //   ... manipulating sequences of any non-array trivial standard-layout types.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <string>
 #include "test_traits.h"
 

diff  --git a/libcxx/test/std/strings/string.view/char.bad.verify.cpp b/libcxx/test/std/strings/string.view/char.bad.verify.cpp
index 735e3e5d2e7162..df917363881505 100644
--- a/libcxx/test/std/strings/string.view/char.bad.verify.cpp
+++ b/libcxx/test/std/strings/string.view/char.bad.verify.cpp
@@ -8,6 +8,8 @@
 
 // UNSUPPORTED: !stdlib=libc++ && (c++03 || c++11 || c++14)
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 // <string_view>
 //   ... manipulating sequences of any non-array trivial standard-layout types.
 

diff  --git a/libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp b/libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
index f1daa7c3dcce93..ae3ac819b1f9c6 100644
--- a/libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
+++ b/libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
@@ -13,6 +13,8 @@
 //
 // See https://github.com/llvm/llvm-project/issues/111125.
 
+// XFAIL: FROZEN-CXX03-HEADERS-FIXME
+
 #include <cstddef>
 #include <bitset>
 #include <type_traits>

diff  --git a/libcxx/test/support/test_macros.h b/libcxx/test/support/test_macros.h
index 7f50282d627176..676c865914b403 100644
--- a/libcxx/test/support/test_macros.h
+++ b/libcxx/test/support/test_macros.h
@@ -214,7 +214,11 @@
 #define TEST_IS_EXECUTED_IN_A_SLOW_ENVIRONMENT
 #endif
 
-#if defined(_LIBCPP_VERSION) && !_LIBCPP_HAS_ALIGNED_ALLOCATION
+#ifdef _LIBCPP_USE_FROZEN_CXX03_HEADERS
+#  ifdef _LIBCPP_HAS_NO_ALIGNED_ALLOCATION
+#    define TEST_HAS_NO_ALIGNED_ALLOCATION
+#  endif
+#elif defined(_LIBCPP_VERSION) && !_LIBCPP_HAS_ALIGNED_ALLOCATION
 #  define TEST_HAS_NO_ALIGNED_ALLOCATION
 #elif TEST_STD_VER < 17 && (!defined(__cpp_aligned_new) || __cpp_aligned_new < 201606L)
 #  define TEST_HAS_NO_ALIGNED_ALLOCATION
@@ -262,7 +266,9 @@
 
 #define TEST_IGNORE_NODISCARD (void)
 
-#if !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_FROM_CHARS_FLOATING_POINT
+#ifdef _LIBCPP_USE_FROZEN_CXX03_HEADERS
+// from-chars is a C++17 feature, so it's never available anyways
+#elif !defined(_LIBCPP_VERSION) || _LIBCPP_AVAILABILITY_HAS_FROM_CHARS_FLOATING_POINT
 #  define TEST_HAS_FROM_CHARS_FLOATING_POINT
 #endif
 
@@ -401,11 +407,19 @@ inline Tp const& DoNotOptimize(Tp const& value) {
 #  define TEST_HAS_NO_UNICODE
 #endif
 
-#if defined(_LIBCPP_VERSION) && _LIBCPP_HAS_OPEN_WITH_WCHAR
+#ifdef _LIBCPP_USE_FROZEN_CXX03_HEADERS
+#  ifdef _LIBCPP_HAS_OPEN_WITH_WCHAR
+#    define TEST_HAS_OPEN_WITH_WCHAR
+#  endif
+#elif defined(_LIBCPP_VERSION) && _LIBCPP_HAS_OPEN_WITH_WCHAR
 #  define TEST_HAS_OPEN_WITH_WCHAR
 #endif
 
-#if (defined(_LIBCPP_VERSION) && !_LIBCPP_HAS_INT128) || defined(_MSVC_STL_VERSION)
+#ifdef _LIBCPP_USE_FROZEN_CXX03_HEADERS
+#  ifdef _LIBCPP_HAS_NO_INT128
+#    define TEST_HAS_NO_INT128
+#  endif
+#elif (defined(_LIBCPP_VERSION) && !_LIBCPP_HAS_INT128) || defined(_MSVC_STL_VERSION)
 #  define TEST_HAS_NO_INT128
 #endif
 
@@ -425,7 +439,11 @@ inline Tp const& DoNotOptimize(Tp const& value) {
 #  define TEST_HAS_NO_FILESYSTEM
 #endif
 
-#if defined(_LIBCPP_VERSION) && !_LIBCPP_HAS_C8RTOMB_MBRTOC8
+#ifdef _LIBCPP_USE_FROZEN_CXX03_HEADERS
+#  ifdef _LIBCPP_HAS_NO_C8RTOMB_MBRTOC8
+#    define TEST_HAS_NO_C8RTOMB_MBRTOC8
+#  endif
+#elif defined(_LIBCPP_VERSION) && !_LIBCPP_HAS_C8RTOMB_MBRTOC8
 #  define TEST_HAS_NO_C8RTOMB_MBRTOC8
 #endif
 
@@ -499,7 +517,9 @@ inline Tp const& DoNotOptimize(Tp const& value) {
 #endif
 
 // Clang-18 has support for deducing this, but it does not set the FTM.
-#if defined(_LIBCPP_VERSION) && _LIBCPP_HAS_EXPLICIT_THIS_PARAMETER
+#ifdef _LIBCPP_USE_FROZEN_CXX03_HEADERS
+// This is a C++20 featue, so we don't care whether the compiler could support it
+#elif defined(_LIBCPP_VERSION) && _LIBCPP_HAS_EXPLICIT_THIS_PARAMETER
 #  define TEST_HAS_EXPLICIT_THIS_PARAMETER
 #endif
 

diff  --git a/libcxx/test/tools/clang_tidy_checks/proper_version_checks.cpp b/libcxx/test/tools/clang_tidy_checks/proper_version_checks.cpp
index 15093a4357bb7d..ebd0d8892fa94c 100644
--- a/libcxx/test/tools/clang_tidy_checks/proper_version_checks.cpp
+++ b/libcxx/test/tools/clang_tidy_checks/proper_version_checks.cpp
@@ -39,6 +39,9 @@ class proper_version_checks_callbacks : public clang::PPCallbacks {
     if (preprocessor_.getSourceManager().isInMainFile(location))
       return;
 
+    if (condition == "__cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)")
+      return;
+
     if (condition.starts_with("_LIBCPP_STD_VER") && condition.find(">") != std::string_view::npos &&
         condition.find(">=") == std::string_view::npos)
       check_.diag(location, "_LIBCPP_STD_VER >= version should be used instead of _LIBCPP_STD_VER > prev_version");

diff  --git a/libcxx/utils/ci/run-buildbot b/libcxx/utils/ci/run-buildbot
index a832380e16cd83..f1ede6474eb9ee 100755
--- a/libcxx/utils/ci/run-buildbot
+++ b/libcxx/utils/ci/run-buildbot
@@ -281,6 +281,12 @@ check-generated-output)
 #
 # Various Standard modes
 #
+frozen-cxx03-headers)
+    clean
+    generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Generic-cxx03-frozen.cmake"
+    check-runtimes
+    check-abi-list
+;;
 generic-cxx03)
     clean
     generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Generic-cxx03.cmake"

diff  --git a/libcxx/utils/generate_feature_test_macro_components.py b/libcxx/utils/generate_feature_test_macro_components.py
index 0b5c0f107134ba..a2ce69892eeb74 100755
--- a/libcxx/utils/generate_feature_test_macro_components.py
+++ b/libcxx/utils/generate_feature_test_macro_components.py
@@ -1629,16 +1629,21 @@ def produce_version_header():
 
 */
 
-#include <__config>
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/version>
+#else
+#  include <__config>
 
-#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
-#  pragma GCC system_header
-#endif
+#  if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+#    pragma GCC system_header
+#  endif
 
 // clang-format off
 
 {cxx_macros}
 
+#endif // __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+
 // clang-format on
 
 #endif // _LIBCPP_VERSIONH

diff  --git a/libcxx/utils/libcxx/test/params.py b/libcxx/utils/libcxx/test/params.py
index 2c5cb169c0a9a3..947cfd26513643 100644
--- a/libcxx/utils/libcxx/test/params.py
+++ b/libcxx/utils/libcxx/test/params.py
@@ -448,5 +448,12 @@ def getSuitableClangTidy(cfg):
             AddSubstitution('%{clang-tidy}', exe),
         ]
     ),
+    Parameter(
+        name='test_frozen_cxx03_headers',
+        type=bool,
+        default=False,
+        help="Whether to test the main or C++03-specific headers. Only changes behaviour when std=c++03.",
+        actions=lambda enabled: [] if not enabled else [AddFlag("-D_LIBCPP_USE_FROZEN_CXX03_HEADERS"), AddFeature("FROZEN-CXX03-HEADERS-FIXME")],
+    ),
 ]
 # fmt: on

diff  --git a/libcxx/vendor/llvm/default_assertion_handler.in b/libcxx/vendor/llvm/default_assertion_handler.in
index e12ccccdaff37f..1d6b21fc6bb456 100644
--- a/libcxx/vendor/llvm/default_assertion_handler.in
+++ b/libcxx/vendor/llvm/default_assertion_handler.in
@@ -10,8 +10,13 @@
 #ifndef _LIBCPP___ASSERTION_HANDLER
 #define _LIBCPP___ASSERTION_HANDLER
 
-#include <__config>
-#include <__verbose_abort>
+#if __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
+#  include <__cxx03/__config>
+#  include <__cxx03/__verbose_abort>
+#else
+#  include <__config>
+#  include <__verbose_abort>
+#endif
 
 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
 #  pragma GCC system_header


        


More information about the libcxx-commits mailing list