[libcxx-commits] [libcxx] 7140050 - [libc++] Updates C++2b to C++23.
Mark de Wever via libcxx-commits
libcxx-commits at lists.llvm.org
Tue May 23 09:44:51 PDT 2023
Author: Mark de Wever
Date: 2023-05-23T18:44:41+02:00
New Revision: 71400505ca048507e827013eb1ea0bc863525cab
URL: https://github.com/llvm/llvm-project/commit/71400505ca048507e827013eb1ea0bc863525cab
DIFF: https://github.com/llvm/llvm-project/commit/71400505ca048507e827013eb1ea0bc863525cab.diff
LOG: [libc++] Updates C++2b to C++23.
During the ISO C++ Committee meeting plenary session the C++23 Standard
has been voted as technical complete.
This updates the reference to c++2b to c++23 and updates the __cplusplus
macro.
Note since we use clang-tidy 16 a small work-around is needed. Clang
knows -std=c++23 but clang-tidy not so for now force the lit compiler
flag to use -std=c++2b instead of -std=c++23.
Reviewed By: #libc, philnik, jloser, ldionne
Differential Revision: https://reviews.llvm.org/D150795
Added:
libcxx/cmake/caches/Generic-cxx23.cmake
libcxx/docs/Status/Cxx23.rst
libcxx/docs/Status/Cxx23Issues.csv
libcxx/docs/Status/Cxx23Papers.csv
libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-gcc.pass.cpp
libcxx/test/libcxx/transitive_includes/cxx23.csv
Modified:
libcxx/docs/FeatureTestMacroTable.rst
libcxx/docs/ReleaseNotes.rst
libcxx/docs/Status/Zip.rst
libcxx/docs/index.rst
libcxx/include/__config
libcxx/include/ranges
libcxx/include/string
libcxx/include/string_view
libcxx/include/type_traits
libcxx/include/utility
libcxx/test/libcxx/transitive_includes.sh.cpp
libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/any.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/array.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/bitset.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/charconv.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/coroutine.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/cstdlib.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/format.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/mdspan.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/numbers.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/queue.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/source_location.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/span.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/stack.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/stdatomic.h.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/typeinfo.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp
libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
libcxx/test/std/strings/basic.string/string.cons/nullptr.compile.pass.cpp
libcxx/test/std/strings/string.view/string.view.cons/nullptr.compile.pass.cpp
libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_scoped_enum.pass.cpp
libcxx/test/std/utilities/utility/utility.underlying/to_underlying.pass.cpp
libcxx/test/std/utilities/utility/utility.underlying/to_underlying.verify.cpp
libcxx/test/support/test_macros.h
libcxx/utils/ci/buildkite-pipeline-clang.yml
libcxx/utils/ci/buildkite-pipeline.yml
libcxx/utils/ci/run-buildbot
libcxx/utils/generate_feature_test_macro_components.py
libcxx/utils/generate_header_inclusion_tests.py
libcxx/utils/libcxx/test/params.py
Removed:
libcxx/cmake/caches/Generic-cxx2b.cmake
libcxx/docs/Status/Cxx2b.rst
libcxx/docs/Status/Cxx2bIssues.csv
libcxx/docs/Status/Cxx2bPapers.csv
libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-clang.pass.cpp
libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-gcc.pass.cpp
libcxx/test/libcxx/transitive_includes/cxx2b.csv
################################################################################
diff --git a/libcxx/cmake/caches/Generic-cxx2b.cmake b/libcxx/cmake/caches/Generic-cxx23.cmake
similarity index 56%
rename from libcxx/cmake/caches/Generic-cxx2b.cmake
rename to libcxx/cmake/caches/Generic-cxx23.cmake
index be767dd2a5e77..bf88abf56ca6a 100644
--- a/libcxx/cmake/caches/Generic-cxx2b.cmake
+++ b/libcxx/cmake/caches/Generic-cxx23.cmake
@@ -1,2 +1,2 @@
-set(LIBCXX_TEST_PARAMS "std=c++2b" CACHE STRING "")
+set(LIBCXX_TEST_PARAMS "std=c++23" CACHE STRING "")
set(LIBCXXABI_TEST_PARAMS "${LIBCXX_TEST_PARAMS}" CACHE STRING "")
diff --git a/libcxx/docs/FeatureTestMacroTable.rst b/libcxx/docs/FeatureTestMacroTable.rst
index 48c2d0ddfae19..dda9756e82ebb 100644
--- a/libcxx/docs/FeatureTestMacroTable.rst
+++ b/libcxx/docs/FeatureTestMacroTable.rst
@@ -298,7 +298,7 @@ Status
------------------------------------------------- -----------------
``__cpp_lib_unwrap_ref`` ``201811L``
------------------------------------------------- -----------------
- **C++ 2b**
+ **C++ 23**
-------------------------------------------------------------------
``__cpp_lib_adaptor_iterator_pair_constructor`` ``202106L``
------------------------------------------------- -----------------
diff --git a/libcxx/docs/ReleaseNotes.rst b/libcxx/docs/ReleaseNotes.rst
index 70927368c5d61..3b7a168daee5a 100644
--- a/libcxx/docs/ReleaseNotes.rst
+++ b/libcxx/docs/ReleaseNotes.rst
@@ -70,7 +70,7 @@ Deprecations and Removals
includes are removed based on the language version used. Incidental transitive
inclusions of the following headers have been removed:
- - C++2b: ``atomic``, ``bit``, ``cstdint``, ``cstdlib``, ``cstring``, ``initializer_list``, ``limits``, ``new``,
+ - C++23: ``atomic``, ``bit``, ``cstdint``, ``cstdlib``, ``cstring``, ``initializer_list``, ``limits``, ``new``,
``stdexcept``, ``system_error``, ``type_traits``, ``typeinfo``
- ``<algorithm>`` no longer includes ``<chrono>`` in any C++ version (it was previously included in C++17 and earlier).
diff --git a/libcxx/docs/Status/Cxx2b.rst b/libcxx/docs/Status/Cxx23.rst
similarity index 89%
rename from libcxx/docs/Status/Cxx2b.rst
rename to libcxx/docs/Status/Cxx23.rst
index df915d828e6d9..cb9ed5d27ea7c 100644
--- a/libcxx/docs/Status/Cxx2b.rst
+++ b/libcxx/docs/Status/Cxx23.rst
@@ -1,7 +1,7 @@
-.. _cxx2b-status:
+.. _cxx23-status:
================================
-libc++ C++2b Status
+libc++ C++23 Status
================================
.. include:: ../Helpers/Styles.rst
@@ -14,6 +14,7 @@ Overview
================================
In November 2020, the C++ standard committee adopted the first changes to the next version of the C++ standard, known here as "C++2b" (probably to be C++23).
+In February 2023, the C++ standard committee approved this draft, and sent it to ISO for approval as C++23.
This page shows the status of libc++; the status of clang's support of the language features is `here <https://clang.llvm.org/cxx_status.html#cxx23>`__.
@@ -27,13 +28,13 @@ The groups that have contributed papers:
.. note:: "Nothing to do" means that no library changes were needed to implement this change.
-.. _paper-status-cxx2b:
+.. _paper-status-cxx23:
Paper Status
====================================
.. csv-table::
- :file: Cxx2bPapers.csv
+ :file: Cxx23Papers.csv
:header-rows: 1
:widths: auto
@@ -48,13 +49,13 @@ Paper Status
The formatter for ``stacktrace`` is not implemented, since ``stacktrace`` is
not implemented yet.
-.. _issues-status-cxx2b:
+.. _issues-status-cxx23:
Library Working Group Issues Status
====================================
.. csv-table::
- :file: Cxx2bIssues.csv
+ :file: Cxx23Issues.csv
:header-rows: 1
:widths: auto
diff --git a/libcxx/docs/Status/Cxx2bIssues.csv b/libcxx/docs/Status/Cxx23Issues.csv
similarity index 100%
rename from libcxx/docs/Status/Cxx2bIssues.csv
rename to libcxx/docs/Status/Cxx23Issues.csv
diff --git a/libcxx/docs/Status/Cxx2bPapers.csv b/libcxx/docs/Status/Cxx23Papers.csv
similarity index 100%
rename from libcxx/docs/Status/Cxx2bPapers.csv
rename to libcxx/docs/Status/Cxx23Papers.csv
diff --git a/libcxx/docs/Status/Zip.rst b/libcxx/docs/Status/Zip.rst
index db2cdfe29690b..9f71386697353 100644
--- a/libcxx/docs/Status/Zip.rst
+++ b/libcxx/docs/Status/Zip.rst
@@ -12,7 +12,7 @@ libc++ Zip Status (P2321R2)
Overview
========
-This document contains the status of the C++2b zip implementation in libc++.
+This document contains the status of the C++23 zip implementation in libc++.
It is used to track both the status of the sub-projects of the effort and who
is assigned to these sub-projects. This avoids duplicating effort.
diff --git a/libcxx/docs/index.rst b/libcxx/docs/index.rst
index 4af4d9f1704f5..337440427d84e 100644
--- a/libcxx/docs/index.rst
+++ b/libcxx/docs/index.rst
@@ -42,7 +42,7 @@ Getting Started with libc++
Status/Cxx14
Status/Cxx17
Status/Cxx20
- Status/Cxx2b
+ Status/Cxx23
Status/Format
Status/Parallelism
Status/Ranges
@@ -145,7 +145,7 @@ C++ Dialect Support
* :ref:`C++14 - Complete <cxx14-status>`
* :ref:`C++17 - In Progress <cxx17-status>`
* :ref:`C++20 - In Progress <cxx20-status>`
-* :ref:`C++2b - In Progress <cxx2b-status>`
+* :ref:`C++23 - In Progress <cxx23-status>`
* :ref:`C++ Feature Test Macro Status <feature-status>`
diff --git a/libcxx/include/__config b/libcxx/include/__config
index 86156c8521fd6..f71b55d08dc9b 100644
--- a/libcxx/include/__config
+++ b/libcxx/include/__config
@@ -61,9 +61,11 @@
# define _LIBCPP_STD_VER 17
# elif __cplusplus <= 202002L
# define _LIBCPP_STD_VER 20
+# elif __cplusplus <= 202302L
+# define _LIBCPP_STD_VER 23
# else
// Expected release year of the next C++ standard
-# define _LIBCPP_STD_VER 23
+# define _LIBCPP_STD_VER 26
# endif
# endif // _LIBCPP_STD_VER
// NOLINTEND(libcpp-cpp-version-check)
diff --git a/libcxx/include/ranges b/libcxx/include/ranges
index 38da82dc7581d..bcf05f55f5edb 100644
--- a/libcxx/include/ranges
+++ b/libcxx/include/ranges
@@ -294,13 +294,13 @@ namespace std::ranges {
// [range.zip], zip view
template<input_range... Views>
requires (view<Views> && ...) && (sizeof...(Views) > 0)
- class zip_view; // C++2b
+ class zip_view; // C++23
template<class... Views>
- inline constexpr bool enable_borrowed_range<zip_view<Views...>> = // C++2b
+ inline constexpr bool enable_borrowed_range<zip_view<Views...>> = // C++23
(enable_borrowed_range<Views> && ...);
- namespace views { inline constexpr unspecified zip = unspecified; } // C++2b
+ namespace views { inline constexpr unspecified zip = unspecified; } // C++23
// [range.as.rvalue]
template <view V>
diff --git a/libcxx/include/string b/libcxx/include/string
index 5925bb8d3f80f..4f4a1197ef171 100644
--- a/libcxx/include/string
+++ b/libcxx/include/string
@@ -119,7 +119,7 @@ public:
explicit basic_string(const T& t, const Allocator& a = Allocator()); // C++17, constexpr since C++20
basic_string(const value_type* s, const allocator_type& a = allocator_type()); // constexpr since C++20
basic_string(const value_type* s, size_type n, const allocator_type& a = allocator_type()); // constexpr since C++20
- basic_string(nullptr_t) = delete; // C++2b
+ basic_string(nullptr_t) = delete; // C++23
basic_string(size_type n, value_type c, const allocator_type& a = allocator_type()); // constexpr since C++20
template<class InputIterator>
basic_string(InputIterator begin, InputIterator end,
@@ -140,7 +140,7 @@ public:
allocator_type::propagate_on_container_move_assignment::value ||
allocator_type::is_always_equal::value ); // C++17, constexpr since C++20
basic_string& operator=(const value_type* s); // constexpr since C++20
- basic_string& operator=(nullptr_t) = delete; // C++2b
+ basic_string& operator=(nullptr_t) = delete; // C++23
basic_string& operator=(value_type c); // constexpr since C++20
basic_string& operator=(initializer_list<value_type>); // constexpr since C++20
@@ -342,9 +342,9 @@ public:
constexpr bool ends_with(charT c) const noexcept; // C++20
constexpr bool ends_with(const charT* s) const; // C++20
- constexpr bool contains(basic_string_view<charT, traits> sv) const noexcept; // C++2b
- constexpr bool contains(charT c) const noexcept; // C++2b
- constexpr bool contains(const charT* s) const; // C++2b
+ constexpr bool contains(basic_string_view<charT, traits> sv) const noexcept; // C++23
+ constexpr bool contains(charT c) const noexcept; // C++23
+ constexpr bool contains(const charT* s) const; // C++23
};
template<class InputIterator,
diff --git a/libcxx/include/string_view b/libcxx/include/string_view
index d050b996ecb9e..2cdad44417d8c 100644
--- a/libcxx/include/string_view
+++ b/libcxx/include/string_view
@@ -90,7 +90,7 @@ namespace std {
basic_string_view& operator=(const basic_string_view&) noexcept = default;
template<class Allocator>
constexpr basic_string_view(const charT* str);
- basic_string_view(nullptr_t) = delete; // C++2b
+ basic_string_view(nullptr_t) = delete; // C++23
constexpr basic_string_view(const charT* str, size_type len);
template <class It, class End>
constexpr basic_string_view(It begin, End end); // C++20
@@ -168,9 +168,9 @@ namespace std {
constexpr bool ends_with(charT c) const noexcept; // C++20
constexpr bool ends_with(const charT* s) const; // C++20
- constexpr bool contains(basic_string_view s) const noexcept; // C++2b
- constexpr bool contains(charT c) const noexcept; // C++2b
- constexpr bool contains(const charT* s) const; // C++2b
+ constexpr bool contains(basic_string_view s) const noexcept; // C++23
+ constexpr bool contains(charT c) const noexcept; // C++23
+ constexpr bool contains(const charT* s) const; // C++23
private:
const_pointer data_; // exposition only
diff --git a/libcxx/include/type_traits b/libcxx/include/type_traits
index a157299481343..15e26a710221e 100644
--- a/libcxx/include/type_traits
+++ b/libcxx/include/type_traits
@@ -51,7 +51,7 @@ namespace std
template <class T> struct is_arithmetic;
template <class T> struct is_fundamental;
template <class T> struct is_member_pointer;
- template <class T> struct is_scoped_enum; // C++2b
+ template <class T> struct is_scoped_enum; // C++23
template <class T> struct is_scalar;
template <class T> struct is_object;
template <class T> struct is_compound;
@@ -286,7 +286,7 @@ namespace std
template <class T> inline constexpr bool is_member_pointer_v
= is_member_pointer<T>::value; // C++17
template <class T> inline constexpr bool is_scoped_enum_v
- = is_scoped_enum<T>::value; // C++2b
+ = is_scoped_enum<T>::value; // C++23
// See C++14 20.10.4.3, type properties
template <class T> inline constexpr bool is_const_v
diff --git a/libcxx/include/utility b/libcxx/include/utility
index 9ed7c6dac8ad2..c5581d55e79bb 100644
--- a/libcxx/include/utility
+++ b/libcxx/include/utility
@@ -240,7 +240,7 @@ template <size_t I>
// [utility.underlying], to_underlying
template <class T>
- constexpr underlying_type_t<T> to_underlying( T value ) noexcept; // C++2b
+ constexpr underlying_type_t<T> to_underlying( T value ) noexcept; // C++23
} // std
diff --git a/libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-clang.pass.cpp b/libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
similarity index 99%
rename from libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-clang.pass.cpp
rename to libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
index 269c487de23d2..a07260a34516f 100644
--- a/libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-clang.pass.cpp
+++ b/libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-clang.pass.cpp
@@ -7,7 +7,7 @@
//===----------------------------------------------------------------------===//
// Check that Clang supports constexpr <cmath> and <cstdlib> functions
-// mentioned in the P0533R9 paper that is part of C++2b
+// mentioned in the P0533R9 paper that is part of C++23
// (https://wg21.link/p0533r9)
//
// Every function called in this test should become constexpr. Whenever some
diff --git a/libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-gcc.pass.cpp b/libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-gcc.pass.cpp
similarity index 99%
rename from libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-gcc.pass.cpp
rename to libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-gcc.pass.cpp
index b4ff47a0ff74d..8c481f41a945e 100644
--- a/libcxx/test/libcxx/numerics/c.math/constexpr-cxx2b-gcc.pass.cpp
+++ b/libcxx/test/libcxx/numerics/c.math/constexpr-cxx23-gcc.pass.cpp
@@ -7,7 +7,7 @@
//===----------------------------------------------------------------------===//
// Check that GCC supports constexpr <cmath> and <cstdlib> functions
-// mentioned in the P0533R9 paper that is part of C++2b
+// mentioned in the P0533R9 paper that is part of C++23
// (https://wg21.link/p0533r9)
//
// Every function called in this test should become constexpr. Whenever some
diff --git a/libcxx/test/libcxx/transitive_includes.sh.cpp b/libcxx/test/libcxx/transitive_includes.sh.cpp
index db462025bb1cd..62e955e461970 100644
--- a/libcxx/test/libcxx/transitive_includes.sh.cpp
+++ b/libcxx/test/libcxx/transitive_includes.sh.cpp
@@ -40,7 +40,7 @@ import re
# To re-generate the list of expected headers, temporarily set this to True, re-generate
# the file and run this test.
# Note that this needs to be done for all supported language versions of libc++:
-# for std in c++03 c++11 c++14 c++17 c++20 c++2b; do <build>/bin/llvm-lit --param std=$std ${path_to_this_file}; done
+# for std in c++03 c++11 c++14 c++17 c++20 c++23; do <build>/bin/llvm-lit --param std=$std ${path_to_this_file}; done
regenerate_expected_results = False
# Used because the sequence of tokens RUN : can't appear anywhere or it'll confuse Lit.
RUN = "RUN"
diff --git a/libcxx/test/libcxx/transitive_includes/cxx2b.csv b/libcxx/test/libcxx/transitive_includes/cxx23.csv
similarity index 100%
rename from libcxx/test/libcxx/transitive_includes/cxx2b.csv
rename to libcxx/test/libcxx/transitive_includes/cxx23.csv
diff --git a/libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp b/libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
index 0538dcd4ac142..b016babbb9485 100644
--- a/libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
+++ b/libcxx/test/std/input.output/iostream.format/output.streams/ostream.formatted/ostream.inserters.arithmetic/pointer.volatile.pass.cpp
@@ -13,9 +13,9 @@
// This test fails in Windows DLL configurations, due to
// __exclude_from_explicit_instantiation__ not behaving as it should in
// combination with dllimport (https://llvm.org/PR41018), in combination
-// with running tests in c++2b mode while building the library in c++20 mode.
+// with running tests in c++23 mode while building the library in c++20 mode.
//
-// If the library was built in c++2b mode, this test would succeed.
+// If the library was built in c++23 mode, this test would succeed.
//
// Older CMake passed -std:c++latest to set C++ 20 mode on clang-cl, which
// hid this issue. With newer CMake versions, it passes -std:c++20 which
@@ -23,7 +23,7 @@
//
// Marking as UNSUPPORTED instead of XFAIL to avoid spurious failures/successes
// depending on the version of CMake used.
-// TODO: Remove this when the library is built in c++2b mode.
+// TODO: Remove this when the library is built in c++23 mode.
//
// UNSUPPORTED: windows-dll
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
index e871065fe97f8..68bc144980f1a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/algorithm.version.compile.pass.cpp
@@ -20,7 +20,7 @@
__cpp_lib_constexpr_algorithms 201806L [C++20]
__cpp_lib_parallel_algorithm 201603L [C++17]
__cpp_lib_ranges 202106L [C++20]
- __cpp_lib_ranges_starts_ends_with 202106L [C++2b]
+ __cpp_lib_ranges_starts_ends_with 202106L [C++23]
__cpp_lib_robust_nonmodifying_seq_ops 201304L [C++14]
__cpp_lib_sample 201603L [C++17]
__cpp_lib_shift 201806L [C++20]
@@ -48,7 +48,7 @@
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_robust_nonmodifying_seq_ops
@@ -82,7 +82,7 @@
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifndef __cpp_lib_robust_nonmodifying_seq_ops
@@ -131,7 +131,7 @@
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifndef __cpp_lib_robust_nonmodifying_seq_ops
@@ -189,7 +189,7 @@
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifndef __cpp_lib_robust_nonmodifying_seq_ops
@@ -216,25 +216,25 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_clamp
-# error "__cpp_lib_clamp should be defined in c++2b"
+# error "__cpp_lib_clamp should be defined in c++23"
# endif
# if __cpp_lib_clamp != 201603L
-# error "__cpp_lib_clamp should have the value 201603L in c++2b"
+# error "__cpp_lib_clamp should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_constexpr_algorithms
-# error "__cpp_lib_constexpr_algorithms should be defined in c++2b"
+# error "__cpp_lib_constexpr_algorithms should be defined in c++23"
# endif
# if __cpp_lib_constexpr_algorithms != 201806L
-# error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++2b"
+# error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_parallel_algorithm
-# error "__cpp_lib_parallel_algorithm should be defined in c++2b"
+# error "__cpp_lib_parallel_algorithm should be defined in c++23"
# endif
# if __cpp_lib_parallel_algorithm != 201603L
-# error "__cpp_lib_parallel_algorithm should have the value 201603L in c++2b"
+# error "__cpp_lib_parallel_algorithm should have the value 201603L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_parallel_algorithm
@@ -243,18 +243,18 @@
# endif
# ifndef __cpp_lib_ranges
-# error "__cpp_lib_ranges should be defined in c++2b"
+# error "__cpp_lib_ranges should be defined in c++23"
# endif
# if __cpp_lib_ranges != 202106L
-# error "__cpp_lib_ranges should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges should have the value 202106L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should be defined in c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should be defined in c++23"
# endif
# if __cpp_lib_ranges_starts_ends_with != 202106L
-# error "__cpp_lib_ranges_starts_ends_with should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_starts_ends_with
@@ -263,24 +263,24 @@
# endif
# ifndef __cpp_lib_robust_nonmodifying_seq_ops
-# error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++2b"
+# error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++23"
# endif
# if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
-# error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++2b"
+# error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_sample
-# error "__cpp_lib_sample should be defined in c++2b"
+# error "__cpp_lib_sample should be defined in c++23"
# endif
# if __cpp_lib_sample != 201603L
-# error "__cpp_lib_sample should have the value 201603L in c++2b"
+# error "__cpp_lib_sample should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_shift
-# error "__cpp_lib_shift should be defined in c++2b"
+# error "__cpp_lib_shift should be defined in c++23"
# endif
# if __cpp_lib_shift != 201806L
-# error "__cpp_lib_shift should have the value 201806L in c++2b"
+# error "__cpp_lib_shift should have the value 201806L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.compile.pass.cpp
index c4cd218d7b41f..bc3392f99ce5c 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/any.version.compile.pass.cpp
@@ -55,10 +55,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_any
-# error "__cpp_lib_any should be defined in c++2b"
+# error "__cpp_lib_any should be defined in c++23"
# endif
# if __cpp_lib_any != 201606L
-# error "__cpp_lib_any should have the value 201606L in c++2b"
+# error "__cpp_lib_any should have the value 201606L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.compile.pass.cpp
index bd091cc7c4433..e7da783e394c8 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/array.version.compile.pass.cpp
@@ -99,24 +99,24 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_array_constexpr
-# error "__cpp_lib_array_constexpr should be defined in c++2b"
+# error "__cpp_lib_array_constexpr should be defined in c++23"
# endif
# if __cpp_lib_array_constexpr != 201811L
-# error "__cpp_lib_array_constexpr should have the value 201811L in c++2b"
+# error "__cpp_lib_array_constexpr should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_to_array
-# error "__cpp_lib_to_array should be defined in c++2b"
+# error "__cpp_lib_to_array should be defined in c++23"
# endif
# if __cpp_lib_to_array != 201907L
-# error "__cpp_lib_to_array should have the value 201907L in c++2b"
+# error "__cpp_lib_to_array should have the value 201907L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
index eeafd019dd280..d27f8c4b0bfd3 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
@@ -245,18 +245,18 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_atomic_flag_test
-# error "__cpp_lib_atomic_flag_test should be defined in c++2b"
+# error "__cpp_lib_atomic_flag_test should be defined in c++23"
# endif
# if __cpp_lib_atomic_flag_test != 201907L
-# error "__cpp_lib_atomic_flag_test should have the value 201907L in c++2b"
+# error "__cpp_lib_atomic_flag_test should have the value 201907L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_atomic_float
-# error "__cpp_lib_atomic_float should be defined in c++2b"
+# error "__cpp_lib_atomic_float should be defined in c++23"
# endif
# if __cpp_lib_atomic_float != 201711L
-# error "__cpp_lib_atomic_float should have the value 201711L in c++2b"
+# error "__cpp_lib_atomic_float should have the value 201711L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_atomic_float
@@ -265,25 +265,25 @@
# endif
# ifndef __cpp_lib_atomic_is_always_lock_free
-# error "__cpp_lib_atomic_is_always_lock_free should be defined in c++2b"
+# error "__cpp_lib_atomic_is_always_lock_free should be defined in c++23"
# endif
# if __cpp_lib_atomic_is_always_lock_free != 201603L
-# error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++2b"
+# error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_atomic_lock_free_type_aliases
-# error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++2b"
+# error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++23"
# endif
# if __cpp_lib_atomic_lock_free_type_aliases != 201907L
-# error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++2b"
+# error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_atomic_ref
-# error "__cpp_lib_atomic_ref should be defined in c++2b"
+# error "__cpp_lib_atomic_ref should be defined in c++23"
# endif
# if __cpp_lib_atomic_ref != 201806L
-# error "__cpp_lib_atomic_ref should have the value 201806L in c++2b"
+# error "__cpp_lib_atomic_ref should have the value 201806L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_atomic_ref
@@ -293,10 +293,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_atomic_shared_ptr
-# error "__cpp_lib_atomic_shared_ptr should be defined in c++2b"
+# error "__cpp_lib_atomic_shared_ptr should be defined in c++23"
# endif
# if __cpp_lib_atomic_shared_ptr != 201711L
-# error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++2b"
+# error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_atomic_shared_ptr
@@ -305,18 +305,18 @@
# endif
# ifndef __cpp_lib_atomic_value_initialization
-# error "__cpp_lib_atomic_value_initialization should be defined in c++2b"
+# error "__cpp_lib_atomic_value_initialization should be defined in c++23"
# endif
# if __cpp_lib_atomic_value_initialization != 201911L
-# error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++2b"
+# error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++23"
# endif
# if !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_atomic_wait
-# error "__cpp_lib_atomic_wait should be defined in c++2b"
+# error "__cpp_lib_atomic_wait should be defined in c++23"
# endif
# if __cpp_lib_atomic_wait != 201907L
-# error "__cpp_lib_atomic_wait should have the value 201907L in c++2b"
+# error "__cpp_lib_atomic_wait should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_atomic_wait
@@ -326,10 +326,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.compile.pass.cpp
index adf2dee0edb3a..79d317550d0e4 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.compile.pass.cpp
@@ -61,10 +61,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_barrier
-# error "__cpp_lib_barrier should be defined in c++2b"
+# error "__cpp_lib_barrier should be defined in c++23"
# endif
# if __cpp_lib_barrier != 201907L
-# error "__cpp_lib_barrier should have the value 201907L in c++2b"
+# error "__cpp_lib_barrier should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_barrier
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.compile.pass.cpp
index 6ab27499afe05..5e7080be7ed04 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/bit.version.compile.pass.cpp
@@ -18,7 +18,7 @@
/* Constant Value
__cpp_lib_bit_cast 201806L [C++20]
__cpp_lib_bitops 201907L [C++20]
- __cpp_lib_byteswap 202110L [C++2b]
+ __cpp_lib_byteswap 202110L [C++23]
__cpp_lib_endian 201907L [C++20]
__cpp_lib_int_pow2 202002L [C++20]
*/
@@ -37,7 +37,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifdef __cpp_lib_endian
@@ -59,7 +59,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifdef __cpp_lib_endian
@@ -81,7 +81,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifdef __cpp_lib_endian
@@ -115,7 +115,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifndef __cpp_lib_endian
@@ -135,18 +135,18 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_bit_cast
-# error "__cpp_lib_bit_cast should be defined in c++2b"
+# error "__cpp_lib_bit_cast should be defined in c++23"
# endif
# if __cpp_lib_bit_cast != 201806L
-# error "__cpp_lib_bit_cast should have the value 201806L in c++2b"
+# error "__cpp_lib_bit_cast should have the value 201806L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_bitops
-# error "__cpp_lib_bitops should be defined in c++2b"
+# error "__cpp_lib_bitops should be defined in c++23"
# endif
# if __cpp_lib_bitops != 201907L
-# error "__cpp_lib_bitops should have the value 201907L in c++2b"
+# error "__cpp_lib_bitops should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_bitops
@@ -155,24 +155,24 @@
# endif
# ifndef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should be defined in c++2b"
+# error "__cpp_lib_byteswap should be defined in c++23"
# endif
# if __cpp_lib_byteswap != 202110L
-# error "__cpp_lib_byteswap should have the value 202110L in c++2b"
+# error "__cpp_lib_byteswap should have the value 202110L in c++23"
# endif
# ifndef __cpp_lib_endian
-# error "__cpp_lib_endian should be defined in c++2b"
+# error "__cpp_lib_endian should be defined in c++23"
# endif
# if __cpp_lib_endian != 201907L
-# error "__cpp_lib_endian should have the value 201907L in c++2b"
+# error "__cpp_lib_endian should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_int_pow2
-# error "__cpp_lib_int_pow2 should be defined in c++2b"
+# error "__cpp_lib_int_pow2 should be defined in c++23"
# endif
# if __cpp_lib_int_pow2 != 202002L
-# error "__cpp_lib_int_pow2 should have the value 202002L in c++2b"
+# error "__cpp_lib_int_pow2 should have the value 202002L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/bitset.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/bitset.version.compile.pass.cpp
index 8179d3b7028f6..f1bf15a09489a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/bitset.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/bitset.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <bitset>
/* Constant Value
- __cpp_lib_constexpr_bitset 202207L [C++2b]
+ __cpp_lib_constexpr_bitset 202207L [C++23]
*/
#include <bitset>
@@ -25,34 +25,34 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should be defined in c++2b"
+# error "__cpp_lib_constexpr_bitset should be defined in c++23"
# endif
# if __cpp_lib_constexpr_bitset != 202207L
-# error "__cpp_lib_constexpr_bitset should have the value 202207L in c++2b"
+# error "__cpp_lib_constexpr_bitset should have the value 202207L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.version.compile.pass.cpp
index 8042ff683441a..b81b6fbccb279 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/charconv.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <charconv>
/* Constant Value
- __cpp_lib_constexpr_charconv 202207L [C++2b]
+ __cpp_lib_constexpr_charconv 202207L [C++23]
__cpp_lib_to_chars 201611L [C++17]
*/
@@ -26,7 +26,7 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# ifdef __cpp_lib_to_chars
@@ -36,7 +36,7 @@
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# ifdef __cpp_lib_to_chars
@@ -46,7 +46,7 @@
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# if !defined(_LIBCPP_VERSION)
@@ -65,7 +65,7 @@
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# if !defined(_LIBCPP_VERSION)
@@ -84,18 +84,18 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should be defined in c++2b"
+# error "__cpp_lib_constexpr_charconv should be defined in c++23"
# endif
# if __cpp_lib_constexpr_charconv != 202207L
-# error "__cpp_lib_constexpr_charconv should have the value 202207L in c++2b"
+# error "__cpp_lib_constexpr_charconv should have the value 202207L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_to_chars
-# error "__cpp_lib_to_chars should be defined in c++2b"
+# error "__cpp_lib_to_chars should be defined in c++23"
# endif
# if __cpp_lib_to_chars != 201611L
-# error "__cpp_lib_to_chars should have the value 201611L in c++2b"
+# error "__cpp_lib_to_chars should have the value 201611L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_to_chars
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.compile.pass.cpp
index 6bed4a3073008..e960c6d6fd450 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/chrono.version.compile.pass.cpp
@@ -81,17 +81,17 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_chrono
-# error "__cpp_lib_chrono should be defined in c++2b"
+# error "__cpp_lib_chrono should be defined in c++23"
# endif
# if __cpp_lib_chrono != 201611L
-# error "__cpp_lib_chrono should have the value 201611L in c++2b"
+# error "__cpp_lib_chrono should have the value 201611L in c++23"
# endif
# ifndef __cpp_lib_chrono_udls
-# error "__cpp_lib_chrono_udls should be defined in c++2b"
+# error "__cpp_lib_chrono_udls should be defined in c++23"
# endif
# if __cpp_lib_chrono_udls != 201304L
-# error "__cpp_lib_chrono_udls should have the value 201304L in c++2b"
+# error "__cpp_lib_chrono_udls should have the value 201304L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.compile.pass.cpp
index 2a7025966af58..5ba7cbb2e417d 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/cmath.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <cmath>
/* Constant Value
- __cpp_lib_constexpr_cmath 202202L [C++2b]
+ __cpp_lib_constexpr_cmath 202202L [C++23]
__cpp_lib_hypot 201603L [C++17]
__cpp_lib_interpolate 201902L [C++20]
__cpp_lib_math_special_functions 201603L [C++17]
@@ -28,7 +28,7 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifdef __cpp_lib_hypot
@@ -46,7 +46,7 @@
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifdef __cpp_lib_hypot
@@ -64,7 +64,7 @@
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifndef __cpp_lib_hypot
@@ -94,7 +94,7 @@
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifndef __cpp_lib_hypot
@@ -128,10 +128,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should be defined in c++2b"
+# error "__cpp_lib_constexpr_cmath should be defined in c++23"
# endif
# if __cpp_lib_constexpr_cmath != 202202L
-# error "__cpp_lib_constexpr_cmath should have the value 202202L in c++2b"
+# error "__cpp_lib_constexpr_cmath should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_constexpr_cmath
@@ -140,25 +140,25 @@
# endif
# ifndef __cpp_lib_hypot
-# error "__cpp_lib_hypot should be defined in c++2b"
+# error "__cpp_lib_hypot should be defined in c++23"
# endif
# if __cpp_lib_hypot != 201603L
-# error "__cpp_lib_hypot should have the value 201603L in c++2b"
+# error "__cpp_lib_hypot should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_interpolate
-# error "__cpp_lib_interpolate should be defined in c++2b"
+# error "__cpp_lib_interpolate should be defined in c++23"
# endif
# if __cpp_lib_interpolate != 201902L
-# error "__cpp_lib_interpolate should have the value 201902L in c++2b"
+# error "__cpp_lib_interpolate should have the value 201902L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_math_special_functions
-# error "__cpp_lib_math_special_functions should be defined in c++2b"
+# error "__cpp_lib_math_special_functions should be defined in c++23"
# endif
# if __cpp_lib_math_special_functions != 201603L
-# error "__cpp_lib_math_special_functions should have the value 201603L in c++2b"
+# error "__cpp_lib_math_special_functions should have the value 201603L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_math_special_functions
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.compile.pass.cpp
index cb50477363de0..b2b36226448a2 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/compare.version.compile.pass.cpp
@@ -59,10 +59,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_three_way_comparison
-# error "__cpp_lib_three_way_comparison should be defined in c++2b"
+# error "__cpp_lib_three_way_comparison should be defined in c++23"
# endif
# if __cpp_lib_three_way_comparison != 201907L
-# error "__cpp_lib_three_way_comparison should have the value 201907L in c++2b"
+# error "__cpp_lib_three_way_comparison should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_three_way_comparison
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.compile.pass.cpp
index 1ee022b94cc56..2c2ce830f7b68 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/complex.version.compile.pass.cpp
@@ -78,17 +78,17 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_complex_udls
-# error "__cpp_lib_complex_udls should be defined in c++2b"
+# error "__cpp_lib_complex_udls should be defined in c++23"
# endif
# if __cpp_lib_complex_udls != 201309L
-# error "__cpp_lib_complex_udls should have the value 201309L in c++2b"
+# error "__cpp_lib_complex_udls should have the value 201309L in c++23"
# endif
# ifndef __cpp_lib_constexpr_complex
-# error "__cpp_lib_constexpr_complex should be defined in c++2b"
+# error "__cpp_lib_constexpr_complex should be defined in c++23"
# endif
# if __cpp_lib_constexpr_complex != 201711L
-# error "__cpp_lib_constexpr_complex should have the value 201711L in c++2b"
+# error "__cpp_lib_constexpr_complex should have the value 201711L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.compile.pass.cpp
index 09cff6546912e..f4e18cd31525d 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/concepts.version.compile.pass.cpp
@@ -52,10 +52,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_concepts
-# error "__cpp_lib_concepts should be defined in c++2b"
+# error "__cpp_lib_concepts should be defined in c++23"
# endif
# if __cpp_lib_concepts != 202002L
-# error "__cpp_lib_concepts should have the value 202002L in c++2b"
+# error "__cpp_lib_concepts should have the value 202002L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/coroutine.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/coroutine.version.compile.pass.cpp
index 40caf475fd705..3c3be2c07b9d1 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/coroutine.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/coroutine.version.compile.pass.cpp
@@ -52,10 +52,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_coroutine
-# error "__cpp_lib_coroutine should be defined in c++2b"
+# error "__cpp_lib_coroutine should be defined in c++23"
# endif
# if __cpp_lib_coroutine != 201902L
-# error "__cpp_lib_coroutine should have the value 201902L in c++2b"
+# error "__cpp_lib_coroutine should have the value 201902L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.compile.pass.cpp
index 789de8904ebfe..89cf6cad3e550 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/cstddef.version.compile.pass.cpp
@@ -55,10 +55,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_byte
-# error "__cpp_lib_byte should be defined in c++2b"
+# error "__cpp_lib_byte should be defined in c++23"
# endif
# if __cpp_lib_byte != 201603L
-# error "__cpp_lib_byte should have the value 201603L in c++2b"
+# error "__cpp_lib_byte should have the value 201603L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/cstdlib.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/cstdlib.version.compile.pass.cpp
index 99aa931ac2b05..b310054d5190e 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/cstdlib.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/cstdlib.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <cstdlib>
/* Constant Value
- __cpp_lib_constexpr_cmath 202202L [C++2b]
+ __cpp_lib_constexpr_cmath 202202L [C++23]
*/
#include <cstdlib>
@@ -25,35 +25,35 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should be defined in c++2b"
+# error "__cpp_lib_constexpr_cmath should be defined in c++23"
# endif
# if __cpp_lib_constexpr_cmath != 202202L
-# error "__cpp_lib_constexpr_cmath should have the value 202202L in c++2b"
+# error "__cpp_lib_constexpr_cmath should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_constexpr_cmath
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp
index b61fad789b202..6bd37b5b528ef 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/deque.version.compile.pass.cpp
@@ -19,7 +19,7 @@
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <deque>
@@ -40,7 +40,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -58,7 +58,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -82,7 +82,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -109,38 +109,38 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.compile.pass.cpp
index 0617d25a2dedf..91fc9ae77cc30 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/exception.version.compile.pass.cpp
@@ -55,10 +55,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_uncaught_exceptions
-# error "__cpp_lib_uncaught_exceptions should be defined in c++2b"
+# error "__cpp_lib_uncaught_exceptions should be defined in c++23"
# endif
# if __cpp_lib_uncaught_exceptions != 201411L
-# error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++2b"
+# error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.compile.pass.cpp
index 0b1c7a0956d43..20337cb6c3545 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/execution.version.compile.pass.cpp
@@ -69,10 +69,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_execution
-# error "__cpp_lib_execution should be defined in c++2b"
+# error "__cpp_lib_execution should be defined in c++23"
# endif
# if __cpp_lib_execution != 201902L
-# error "__cpp_lib_execution should have the value 201902L in c++2b"
+# error "__cpp_lib_execution should have the value 201902L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_execution
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
index 289609838a137..9b5564b9e75db 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/expected.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <expected>
/* Constant Value
- __cpp_lib_expected 202211L [C++2b]
+ __cpp_lib_expected 202211L [C++23]
*/
#include <expected>
@@ -25,34 +25,34 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_expected
-# error "__cpp_lib_expected should be defined in c++2b"
+# error "__cpp_lib_expected should be defined in c++23"
# endif
# if __cpp_lib_expected != 202211L
-# error "__cpp_lib_expected should have the value 202211L in c++2b"
+# error "__cpp_lib_expected should have the value 202211L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
index 692c7fad08aab..d7faa807d9253 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
@@ -96,10 +96,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
@@ -109,10 +109,10 @@
# if !defined(_LIBCPP_AVAILABILITY_HAS_NO_FILESYSTEM)
# ifndef __cpp_lib_filesystem
-# error "__cpp_lib_filesystem should be defined in c++2b"
+# error "__cpp_lib_filesystem should be defined in c++23"
# endif
# if __cpp_lib_filesystem != 201703L
-# error "__cpp_lib_filesystem should have the value 201703L in c++2b"
+# error "__cpp_lib_filesystem should have the value 201703L in c++23"
# endif
# else
# ifdef __cpp_lib_filesystem
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/format.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/format.version.compile.pass.cpp
index 279361b6be552..dd6a2f8664d1e 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/format.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/format.version.compile.pass.cpp
@@ -19,7 +19,7 @@
/* Constant Value
__cpp_lib_format 202106L [C++20]
- __cpp_lib_format_ranges 202207L [C++2b]
+ __cpp_lib_format_ranges 202207L [C++23]
*/
#include <format>
@@ -32,7 +32,7 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -42,7 +42,7 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -52,7 +52,7 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -71,17 +71,17 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_format
-# error "__cpp_lib_format should be defined in c++2b"
+# error "__cpp_lib_format should be defined in c++23"
# endif
# if __cpp_lib_format != 202106L
-# error "__cpp_lib_format should have the value 202106L in c++2b"
+# error "__cpp_lib_format should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_format
@@ -91,10 +91,10 @@
# if !defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)
# ifndef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should be defined in c++2b"
+# error "__cpp_lib_format_ranges should be defined in c++23"
# endif
# if __cpp_lib_format_ranges != 202207L
-# error "__cpp_lib_format_ranges should have the value 202207L in c++2b"
+# error "__cpp_lib_format_ranges should have the value 202207L in c++23"
# endif
# else
# ifdef __cpp_lib_format_ranges
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
index 4e9bb597d0f43..eb883ba429ab6 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/forward_list.version.compile.pass.cpp
@@ -21,7 +21,7 @@
__cpp_lib_incomplete_container_elements 201505L [C++17]
__cpp_lib_list_remove_return_type 201806L [C++20]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <forward_list>
@@ -50,7 +50,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -76,7 +76,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -111,7 +111,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -152,52 +152,52 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_incomplete_container_elements
-# error "__cpp_lib_incomplete_container_elements should be defined in c++2b"
+# error "__cpp_lib_incomplete_container_elements should be defined in c++23"
# endif
# if __cpp_lib_incomplete_container_elements != 201505L
-# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++2b"
+# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++23"
# endif
# ifndef __cpp_lib_list_remove_return_type
-# error "__cpp_lib_list_remove_return_type should be defined in c++2b"
+# error "__cpp_lib_list_remove_return_type should be defined in c++23"
# endif
# if __cpp_lib_list_remove_return_type != 201806L
-# error "__cpp_lib_list_remove_return_type should have the value 201806L in c++2b"
+# error "__cpp_lib_list_remove_return_type should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
index d4845045c1711..0d47275e9edc8 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.compile.pass.cpp
@@ -16,13 +16,13 @@
// Test the feature test macros defined by <functional>
/* Constant Value
- __cpp_lib_bind_back 202202L [C++2b]
+ __cpp_lib_bind_back 202202L [C++23]
__cpp_lib_bind_front 201907L [C++20]
__cpp_lib_boyer_moore_searcher 201603L [C++17]
__cpp_lib_constexpr_functional 201907L [C++20]
__cpp_lib_invoke 201411L [C++17]
- __cpp_lib_invoke_r 202106L [C++2b]
- __cpp_lib_move_only_function 202110L [C++2b]
+ __cpp_lib_invoke_r 202106L [C++23]
+ __cpp_lib_move_only_function 202110L [C++23]
__cpp_lib_not_fn 201603L [C++17]
__cpp_lib_ranges 202106L [C++20]
__cpp_lib_result_of_sfinae 201210L [C++14]
@@ -37,7 +37,7 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifdef __cpp_lib_bind_front
@@ -57,11 +57,11 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifdef __cpp_lib_not_fn
@@ -87,7 +87,7 @@
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifdef __cpp_lib_bind_front
@@ -107,11 +107,11 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifdef __cpp_lib_not_fn
@@ -143,7 +143,7 @@
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifdef __cpp_lib_bind_front
@@ -169,11 +169,11 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifndef __cpp_lib_not_fn
@@ -208,7 +208,7 @@
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifndef __cpp_lib_bind_front
@@ -240,11 +240,11 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifndef __cpp_lib_not_fn
@@ -286,10 +286,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should be defined in c++2b"
+# error "__cpp_lib_bind_back should be defined in c++23"
# endif
# if __cpp_lib_bind_back != 202202L
-# error "__cpp_lib_bind_back should have the value 202202L in c++2b"
+# error "__cpp_lib_bind_back should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_bind_back
@@ -298,46 +298,46 @@
# endif
# ifndef __cpp_lib_bind_front
-# error "__cpp_lib_bind_front should be defined in c++2b"
+# error "__cpp_lib_bind_front should be defined in c++23"
# endif
# if __cpp_lib_bind_front != 201907L
-# error "__cpp_lib_bind_front should have the value 201907L in c++2b"
+# error "__cpp_lib_bind_front should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_boyer_moore_searcher
-# error "__cpp_lib_boyer_moore_searcher should be defined in c++2b"
+# error "__cpp_lib_boyer_moore_searcher should be defined in c++23"
# endif
# if __cpp_lib_boyer_moore_searcher != 201603L
-# error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++2b"
+# error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_constexpr_functional
-# error "__cpp_lib_constexpr_functional should be defined in c++2b"
+# error "__cpp_lib_constexpr_functional should be defined in c++23"
# endif
# if __cpp_lib_constexpr_functional != 201907L
-# error "__cpp_lib_constexpr_functional should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_functional should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_invoke
-# error "__cpp_lib_invoke should be defined in c++2b"
+# error "__cpp_lib_invoke should be defined in c++23"
# endif
# if __cpp_lib_invoke != 201411L
-# error "__cpp_lib_invoke should have the value 201411L in c++2b"
+# error "__cpp_lib_invoke should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should be defined in c++2b"
+# error "__cpp_lib_invoke_r should be defined in c++23"
# endif
# if __cpp_lib_invoke_r != 202106L
-# error "__cpp_lib_invoke_r should have the value 202106L in c++2b"
+# error "__cpp_lib_invoke_r should have the value 202106L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should be defined in c++2b"
+# error "__cpp_lib_move_only_function should be defined in c++23"
# endif
# if __cpp_lib_move_only_function != 202110L
-# error "__cpp_lib_move_only_function should have the value 202110L in c++2b"
+# error "__cpp_lib_move_only_function should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_move_only_function
@@ -346,38 +346,38 @@
# endif
# ifndef __cpp_lib_not_fn
-# error "__cpp_lib_not_fn should be defined in c++2b"
+# error "__cpp_lib_not_fn should be defined in c++23"
# endif
# if __cpp_lib_not_fn != 201603L
-# error "__cpp_lib_not_fn should have the value 201603L in c++2b"
+# error "__cpp_lib_not_fn should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_ranges
-# error "__cpp_lib_ranges should be defined in c++2b"
+# error "__cpp_lib_ranges should be defined in c++23"
# endif
# if __cpp_lib_ranges != 202106L
-# error "__cpp_lib_ranges should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_result_of_sfinae
-# error "__cpp_lib_result_of_sfinae should be defined in c++2b"
+# error "__cpp_lib_result_of_sfinae should be defined in c++23"
# endif
# if __cpp_lib_result_of_sfinae != 201210L
-# error "__cpp_lib_result_of_sfinae should have the value 201210L in c++2b"
+# error "__cpp_lib_result_of_sfinae should have the value 201210L in c++23"
# endif
# ifndef __cpp_lib_transparent_operators
-# error "__cpp_lib_transparent_operators should be defined in c++2b"
+# error "__cpp_lib_transparent_operators should be defined in c++23"
# endif
# if __cpp_lib_transparent_operators != 201510L
-# error "__cpp_lib_transparent_operators should have the value 201510L in c++2b"
+# error "__cpp_lib_transparent_operators should have the value 201510L in c++23"
# endif
# ifndef __cpp_lib_unwrap_ref
-# error "__cpp_lib_unwrap_ref should be defined in c++2b"
+# error "__cpp_lib_unwrap_ref should be defined in c++23"
# endif
# if __cpp_lib_unwrap_ref != 201811L
-# error "__cpp_lib_unwrap_ref should have the value 201811L in c++2b"
+# error "__cpp_lib_unwrap_ref should have the value 201811L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.compile.pass.cpp
index b367c28a3e282..99bff07360b4d 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/iomanip.version.compile.pass.cpp
@@ -60,10 +60,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_quoted_string_io
-# error "__cpp_lib_quoted_string_io should be defined in c++2b"
+# error "__cpp_lib_quoted_string_io should be defined in c++23"
# endif
# if __cpp_lib_quoted_string_io != 201304L
-# error "__cpp_lib_quoted_string_io should have the value 201304L in c++2b"
+# error "__cpp_lib_quoted_string_io should have the value 201304L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.compile.pass.cpp
index 51703df5376c8..5e8ae2f279097 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/istream.version.compile.pass.cpp
@@ -61,10 +61,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.compile.pass.cpp
index a490a8a7dad6f..8170376a203bc 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.compile.pass.cpp
@@ -211,59 +211,59 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_array_constexpr
-# error "__cpp_lib_array_constexpr should be defined in c++2b"
+# error "__cpp_lib_array_constexpr should be defined in c++23"
# endif
# if __cpp_lib_array_constexpr != 201811L
-# error "__cpp_lib_array_constexpr should have the value 201811L in c++2b"
+# error "__cpp_lib_array_constexpr should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_constexpr_iterator
-# error "__cpp_lib_constexpr_iterator should be defined in c++2b"
+# error "__cpp_lib_constexpr_iterator should be defined in c++23"
# endif
# if __cpp_lib_constexpr_iterator != 201811L
-# error "__cpp_lib_constexpr_iterator should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_iterator should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_make_reverse_iterator
-# error "__cpp_lib_make_reverse_iterator should be defined in c++2b"
+# error "__cpp_lib_make_reverse_iterator should be defined in c++23"
# endif
# if __cpp_lib_make_reverse_iterator != 201402L
-# error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++2b"
+# error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++23"
# endif
# ifndef __cpp_lib_move_iterator_concept
-# error "__cpp_lib_move_iterator_concept should be defined in c++2b"
+# error "__cpp_lib_move_iterator_concept should be defined in c++23"
# endif
# if __cpp_lib_move_iterator_concept != 202207L
-# error "__cpp_lib_move_iterator_concept should have the value 202207L in c++2b"
+# error "__cpp_lib_move_iterator_concept should have the value 202207L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_null_iterators
-# error "__cpp_lib_null_iterators should be defined in c++2b"
+# error "__cpp_lib_null_iterators should be defined in c++23"
# endif
# if __cpp_lib_null_iterators != 201304L
-# error "__cpp_lib_null_iterators should have the value 201304L in c++2b"
+# error "__cpp_lib_null_iterators should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_ranges
-# error "__cpp_lib_ranges should be defined in c++2b"
+# error "__cpp_lib_ranges should be defined in c++23"
# endif
# if __cpp_lib_ranges != 202106L
-# error "__cpp_lib_ranges should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_ssize
-# error "__cpp_lib_ssize should be defined in c++2b"
+# error "__cpp_lib_ssize should be defined in c++23"
# endif
# if __cpp_lib_ssize != 201902L
-# error "__cpp_lib_ssize should have the value 201902L in c++2b"
+# error "__cpp_lib_ssize should have the value 201902L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.compile.pass.cpp
index 310827d913075..e470ac1de8a93 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.compile.pass.cpp
@@ -61,10 +61,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_latch
-# error "__cpp_lib_latch should be defined in c++2b"
+# error "__cpp_lib_latch should be defined in c++23"
# endif
# if __cpp_lib_latch != 201907L
-# error "__cpp_lib_latch should have the value 201907L in c++2b"
+# error "__cpp_lib_latch should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_latch
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.compile.pass.cpp
index d79f8371dcb10..c460216f6fb48 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/limits.version.compile.pass.cpp
@@ -59,10 +59,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
index 6c6aaac008641..8dd05cd5fc79a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/list.version.compile.pass.cpp
@@ -21,7 +21,7 @@
__cpp_lib_incomplete_container_elements 201505L [C++17]
__cpp_lib_list_remove_return_type 201806L [C++20]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <list>
@@ -50,7 +50,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -76,7 +76,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -111,7 +111,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -152,52 +152,52 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_incomplete_container_elements
-# error "__cpp_lib_incomplete_container_elements should be defined in c++2b"
+# error "__cpp_lib_incomplete_container_elements should be defined in c++23"
# endif
# if __cpp_lib_incomplete_container_elements != 201505L
-# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++2b"
+# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++23"
# endif
# ifndef __cpp_lib_list_remove_return_type
-# error "__cpp_lib_list_remove_return_type should be defined in c++2b"
+# error "__cpp_lib_list_remove_return_type should be defined in c++23"
# endif
# if __cpp_lib_list_remove_return_type != 201806L
-# error "__cpp_lib_list_remove_return_type should have the value 201806L in c++2b"
+# error "__cpp_lib_list_remove_return_type should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.compile.pass.cpp
index 29c381c1e2ce4..8756760fe186f 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/locale.version.compile.pass.cpp
@@ -61,10 +61,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp
index a127d514805aa..4179d5c7624b8 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp
@@ -17,13 +17,13 @@
/* Constant Value
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
- __cpp_lib_associative_heterogeneous_erasure 202110L [C++2b]
+ __cpp_lib_associative_heterogeneous_erasure 202110L [C++23]
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_generic_associative_lookup 201304L [C++14]
__cpp_lib_map_try_emplace 201411L [C++17]
__cpp_lib_node_extract 201606L [C++17]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <map>
@@ -36,7 +36,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -60,7 +60,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -70,7 +70,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -97,7 +97,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -110,7 +110,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -146,7 +146,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -159,7 +159,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifndef __cpp_lib_erase_if
@@ -198,24 +198,24 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++23"
# endif
# if __cpp_lib_associative_heterogeneous_erasure != 202110L
-# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_associative_heterogeneous_erasure
@@ -224,46 +224,46 @@
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_generic_associative_lookup
-# error "__cpp_lib_generic_associative_lookup should be defined in c++2b"
+# error "__cpp_lib_generic_associative_lookup should be defined in c++23"
# endif
# if __cpp_lib_generic_associative_lookup != 201304L
-# error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++2b"
+# error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_map_try_emplace
-# error "__cpp_lib_map_try_emplace should be defined in c++2b"
+# error "__cpp_lib_map_try_emplace should be defined in c++23"
# endif
# if __cpp_lib_map_try_emplace != 201411L
-# error "__cpp_lib_map_try_emplace should have the value 201411L in c++2b"
+# error "__cpp_lib_map_try_emplace should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_node_extract
-# error "__cpp_lib_node_extract should be defined in c++2b"
+# error "__cpp_lib_node_extract should be defined in c++23"
# endif
# if __cpp_lib_node_extract != 201606L
-# error "__cpp_lib_node_extract should have the value 201606L in c++2b"
+# error "__cpp_lib_node_extract should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/mdspan.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/mdspan.version.compile.pass.cpp
index 26c2600f14e6b..91924fdb834d0 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/mdspan.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/mdspan.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <mdspan>
/* Constant Value
- __cpp_lib_mdspan 202207L [C++2b]
+ __cpp_lib_mdspan 202207L [C++23]
*/
#include <mdspan>
@@ -25,35 +25,35 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should be defined in c++2b"
+# error "__cpp_lib_mdspan should be defined in c++23"
# endif
# if __cpp_lib_mdspan != 202207L
-# error "__cpp_lib_mdspan should have the value 202207L in c++2b"
+# error "__cpp_lib_mdspan should have the value 202207L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_mdspan
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
index 2d4b67ab09f39..8bbc2cea99244 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/memory.version.compile.pass.cpp
@@ -17,16 +17,16 @@
/* Constant Value
__cpp_lib_addressof_constexpr 201603L [C++17]
- __cpp_lib_allocate_at_least 202106L [C++2b]
+ __cpp_lib_allocate_at_least 202106L [C++23]
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
__cpp_lib_assume_aligned 201811L [C++20]
__cpp_lib_atomic_value_initialization 201911L [C++20]
__cpp_lib_constexpr_dynamic_alloc 201907L [C++20]
__cpp_lib_constexpr_memory 201811L [C++20]
- 202202L [C++2b]
+ 202202L [C++23]
__cpp_lib_enable_shared_from_this 201603L [C++17]
__cpp_lib_make_unique 201304L [C++14]
- __cpp_lib_out_ptr 202106L [C++2b]
+ __cpp_lib_out_ptr 202106L [C++23]
__cpp_lib_ranges 202106L [C++20]
__cpp_lib_raw_memory_algorithms 201606L [C++17]
__cpp_lib_shared_ptr_arrays 201611L [C++17]
@@ -48,7 +48,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifdef __cpp_lib_allocator_traits_is_always_equal
@@ -80,7 +80,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges
@@ -118,7 +118,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifdef __cpp_lib_allocator_traits_is_always_equal
@@ -153,7 +153,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges
@@ -197,7 +197,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifndef __cpp_lib_allocator_traits_is_always_equal
@@ -238,7 +238,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges
@@ -291,7 +291,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifndef __cpp_lib_allocator_traits_is_always_equal
@@ -344,7 +344,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# ifndef __cpp_lib_ranges
@@ -405,74 +405,74 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_addressof_constexpr
-# error "__cpp_lib_addressof_constexpr should be defined in c++2b"
+# error "__cpp_lib_addressof_constexpr should be defined in c++23"
# endif
# if __cpp_lib_addressof_constexpr != 201603L
-# error "__cpp_lib_addressof_constexpr should have the value 201603L in c++2b"
+# error "__cpp_lib_addressof_constexpr should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should be defined in c++2b"
+# error "__cpp_lib_allocate_at_least should be defined in c++23"
# endif
# if __cpp_lib_allocate_at_least != 202106L
-# error "__cpp_lib_allocate_at_least should have the value 202106L in c++2b"
+# error "__cpp_lib_allocate_at_least should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_assume_aligned
-# error "__cpp_lib_assume_aligned should be defined in c++2b"
+# error "__cpp_lib_assume_aligned should be defined in c++23"
# endif
# if __cpp_lib_assume_aligned != 201811L
-# error "__cpp_lib_assume_aligned should have the value 201811L in c++2b"
+# error "__cpp_lib_assume_aligned should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_atomic_value_initialization
-# error "__cpp_lib_atomic_value_initialization should be defined in c++2b"
+# error "__cpp_lib_atomic_value_initialization should be defined in c++23"
# endif
# if __cpp_lib_atomic_value_initialization != 201911L
-# error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++2b"
+# error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++23"
# endif
# ifndef __cpp_lib_constexpr_dynamic_alloc
-# error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++2b"
+# error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++23"
# endif
# if __cpp_lib_constexpr_dynamic_alloc != 201907L
-# error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_constexpr_memory
-# error "__cpp_lib_constexpr_memory should be defined in c++2b"
+# error "__cpp_lib_constexpr_memory should be defined in c++23"
# endif
# if __cpp_lib_constexpr_memory != 202202L
-# error "__cpp_lib_constexpr_memory should have the value 202202L in c++2b"
+# error "__cpp_lib_constexpr_memory should have the value 202202L in c++23"
# endif
# ifndef __cpp_lib_enable_shared_from_this
-# error "__cpp_lib_enable_shared_from_this should be defined in c++2b"
+# error "__cpp_lib_enable_shared_from_this should be defined in c++23"
# endif
# if __cpp_lib_enable_shared_from_this != 201603L
-# error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++2b"
+# error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_make_unique
-# error "__cpp_lib_make_unique should be defined in c++2b"
+# error "__cpp_lib_make_unique should be defined in c++23"
# endif
# if __cpp_lib_make_unique != 201304L
-# error "__cpp_lib_make_unique should have the value 201304L in c++2b"
+# error "__cpp_lib_make_unique should have the value 201304L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should be defined in c++2b"
+# error "__cpp_lib_out_ptr should be defined in c++23"
# endif
# if __cpp_lib_out_ptr != 202106L
-# error "__cpp_lib_out_ptr should have the value 202106L in c++2b"
+# error "__cpp_lib_out_ptr should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_out_ptr
@@ -481,39 +481,39 @@
# endif
# ifndef __cpp_lib_ranges
-# error "__cpp_lib_ranges should be defined in c++2b"
+# error "__cpp_lib_ranges should be defined in c++23"
# endif
# if __cpp_lib_ranges != 202106L
-# error "__cpp_lib_ranges should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_raw_memory_algorithms
-# error "__cpp_lib_raw_memory_algorithms should be defined in c++2b"
+# error "__cpp_lib_raw_memory_algorithms should be defined in c++23"
# endif
# if __cpp_lib_raw_memory_algorithms != 201606L
-# error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++2b"
+# error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_shared_ptr_arrays
-# error "__cpp_lib_shared_ptr_arrays should be defined in c++2b"
+# error "__cpp_lib_shared_ptr_arrays should be defined in c++23"
# endif
# if __cpp_lib_shared_ptr_arrays != 201707L
-# error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++2b"
+# error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++23"
# endif
# ifndef __cpp_lib_shared_ptr_weak_type
-# error "__cpp_lib_shared_ptr_weak_type should be defined in c++2b"
+# error "__cpp_lib_shared_ptr_weak_type should be defined in c++23"
# endif
# if __cpp_lib_shared_ptr_weak_type != 201606L
-# error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++2b"
+# error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_smart_ptr_for_overwrite
-# error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++2b"
+# error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++23"
# endif
# if __cpp_lib_smart_ptr_for_overwrite != 202002L
-# error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++2b"
+# error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_smart_ptr_for_overwrite
@@ -522,17 +522,17 @@
# endif
# ifndef __cpp_lib_to_address
-# error "__cpp_lib_to_address should be defined in c++2b"
+# error "__cpp_lib_to_address should be defined in c++23"
# endif
# if __cpp_lib_to_address != 201711L
-# error "__cpp_lib_to_address should have the value 201711L in c++2b"
+# error "__cpp_lib_to_address should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_transparent_operators
-# error "__cpp_lib_transparent_operators should be defined in c++2b"
+# error "__cpp_lib_transparent_operators should be defined in c++23"
# endif
# if __cpp_lib_transparent_operators != 201510L
-# error "__cpp_lib_transparent_operators should have the value 201510L in c++2b"
+# error "__cpp_lib_transparent_operators should have the value 201510L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.compile.pass.cpp
index 573fd0fbc0a3c..4fad499c3f101 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/memory_resource.version.compile.pass.cpp
@@ -75,17 +75,17 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_memory_resource
-# error "__cpp_lib_memory_resource should be defined in c++2b"
+# error "__cpp_lib_memory_resource should be defined in c++23"
# endif
# if __cpp_lib_memory_resource != 201603L
-# error "__cpp_lib_memory_resource should have the value 201603L in c++2b"
+# error "__cpp_lib_memory_resource should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_polymorphic_allocator
-# error "__cpp_lib_polymorphic_allocator should be defined in c++2b"
+# error "__cpp_lib_polymorphic_allocator should be defined in c++23"
# endif
# if __cpp_lib_polymorphic_allocator != 201902L
-# error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++2b"
+# error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.compile.pass.cpp
index fca784e7a77e4..bb129fb8cc4c1 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/mutex.version.compile.pass.cpp
@@ -57,10 +57,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_scoped_lock
-# error "__cpp_lib_scoped_lock should be defined in c++2b"
+# error "__cpp_lib_scoped_lock should be defined in c++23"
# endif
# if __cpp_lib_scoped_lock != 201703L
-# error "__cpp_lib_scoped_lock should have the value 201703L in c++2b"
+# error "__cpp_lib_scoped_lock should have the value 201703L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
index 8c7b4c7839d1e..db6d195394951 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
@@ -117,10 +117,10 @@
# if TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L
# ifndef __cpp_lib_destroying_delete
-# error "__cpp_lib_destroying_delete should be defined in c++2b"
+# error "__cpp_lib_destroying_delete should be defined in c++23"
# endif
# if __cpp_lib_destroying_delete != 201806L
-# error "__cpp_lib_destroying_delete should have the value 201806L in c++2b"
+# error "__cpp_lib_destroying_delete should have the value 201806L in c++23"
# endif
# else
# ifdef __cpp_lib_destroying_delete
@@ -130,10 +130,10 @@
# if defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE)
# ifndef __cpp_lib_hardware_interference_size
-# error "__cpp_lib_hardware_interference_size should be defined in c++2b"
+# error "__cpp_lib_hardware_interference_size should be defined in c++23"
# endif
# if __cpp_lib_hardware_interference_size != 201703L
-# error "__cpp_lib_hardware_interference_size should have the value 201703L in c++2b"
+# error "__cpp_lib_hardware_interference_size should have the value 201703L in c++23"
# endif
# else
# ifdef __cpp_lib_hardware_interference_size
@@ -142,10 +142,10 @@
# endif
# ifndef __cpp_lib_launder
-# error "__cpp_lib_launder should be defined in c++2b"
+# error "__cpp_lib_launder should be defined in c++23"
# endif
# if __cpp_lib_launder != 201606L
-# error "__cpp_lib_launder should have the value 201606L in c++2b"
+# error "__cpp_lib_launder should have the value 201606L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/numbers.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/numbers.version.compile.pass.cpp
index c9e2cfb0fe298..f2fde2020c930 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/numbers.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/numbers.version.compile.pass.cpp
@@ -52,10 +52,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_math_constants
-# error "__cpp_lib_math_constants should be defined in c++2b"
+# error "__cpp_lib_math_constants should be defined in c++23"
# endif
# if __cpp_lib_math_constants != 201907L
-# error "__cpp_lib_math_constants should have the value 201907L in c++2b"
+# error "__cpp_lib_math_constants should have the value 201907L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
index 0a30e127d666d..1494c5e21ef06 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/numeric.version.compile.pass.cpp
@@ -20,7 +20,7 @@
__cpp_lib_gcd_lcm 201606L [C++17]
__cpp_lib_interpolate 201902L [C++20]
__cpp_lib_parallel_algorithm 201603L [C++17]
- __cpp_lib_ranges_iota 202202L [C++2b]
+ __cpp_lib_ranges_iota 202202L [C++23]
*/
#include <numeric>
@@ -45,7 +45,7 @@
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -67,7 +67,7 @@
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -101,7 +101,7 @@
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -141,38 +141,38 @@
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_constexpr_numeric
-# error "__cpp_lib_constexpr_numeric should be defined in c++2b"
+# error "__cpp_lib_constexpr_numeric should be defined in c++23"
# endif
# if __cpp_lib_constexpr_numeric != 201911L
-# error "__cpp_lib_constexpr_numeric should have the value 201911L in c++2b"
+# error "__cpp_lib_constexpr_numeric should have the value 201911L in c++23"
# endif
# ifndef __cpp_lib_gcd_lcm
-# error "__cpp_lib_gcd_lcm should be defined in c++2b"
+# error "__cpp_lib_gcd_lcm should be defined in c++23"
# endif
# if __cpp_lib_gcd_lcm != 201606L
-# error "__cpp_lib_gcd_lcm should have the value 201606L in c++2b"
+# error "__cpp_lib_gcd_lcm should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_interpolate
-# error "__cpp_lib_interpolate should be defined in c++2b"
+# error "__cpp_lib_interpolate should be defined in c++23"
# endif
# if __cpp_lib_interpolate != 201902L
-# error "__cpp_lib_interpolate should have the value 201902L in c++2b"
+# error "__cpp_lib_interpolate should have the value 201902L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_parallel_algorithm
-# error "__cpp_lib_parallel_algorithm should be defined in c++2b"
+# error "__cpp_lib_parallel_algorithm should be defined in c++23"
# endif
# if __cpp_lib_parallel_algorithm != 201603L
-# error "__cpp_lib_parallel_algorithm should have the value 201603L in c++2b"
+# error "__cpp_lib_parallel_algorithm should have the value 201603L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_parallel_algorithm
@@ -182,10 +182,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should be defined in c++2b"
+# error "__cpp_lib_ranges_iota should be defined in c++23"
# endif
# if __cpp_lib_ranges_iota != 202202L
-# error "__cpp_lib_ranges_iota should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_iota should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_iota
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
index b1c5f3126eaea..ace7cae571706 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
@@ -17,7 +17,7 @@
/* Constant Value
__cpp_lib_optional 201606L [C++17]
- 202110L [C++2b]
+ 202110L [C++23]
*/
#include <optional>
@@ -56,10 +56,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_optional
-# error "__cpp_lib_optional should be defined in c++2b"
+# error "__cpp_lib_optional should be defined in c++23"
# endif
# if __cpp_lib_optional != 202110L
-# error "__cpp_lib_optional should have the value 202110L in c++2b"
+# error "__cpp_lib_optional should have the value 202110L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.compile.pass.cpp
index 0f9034fc0631d..43711e1feeb03 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.compile.pass.cpp
@@ -61,10 +61,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/queue.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/queue.version.compile.pass.cpp
index a76d99871ef7a..07644467f07bc 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/queue.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/queue.version.compile.pass.cpp
@@ -16,8 +16,8 @@
// Test the feature test macros defined by <queue>
/* Constant Value
- __cpp_lib_adaptor_iterator_pair_constructor 202106L [C++2b]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_adaptor_iterator_pair_constructor 202106L [C++23]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <queue>
@@ -26,58 +26,58 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++23"
# endif
# if __cpp_lib_adaptor_iterator_pair_constructor != 202106L
-# error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
index 581875d6cd299..ab5cdb1505dab 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
@@ -17,12 +17,12 @@
/* Constant Value
__cpp_lib_ranges 202106L [C++20]
- __cpp_lib_ranges_as_rvalue 202207L [C++2b]
- __cpp_lib_ranges_chunk 202202L [C++2b]
- __cpp_lib_ranges_chunk_by 202202L [C++2b]
- __cpp_lib_ranges_join_with 202202L [C++2b]
- __cpp_lib_ranges_slide 202202L [C++2b]
- __cpp_lib_ranges_zip 202110L [C++2b]
+ __cpp_lib_ranges_as_rvalue 202207L [C++23]
+ __cpp_lib_ranges_chunk 202202L [C++23]
+ __cpp_lib_ranges_chunk_by 202202L [C++23]
+ __cpp_lib_ranges_join_with 202202L [C++23]
+ __cpp_lib_ranges_slide 202202L [C++23]
+ __cpp_lib_ranges_zip 202110L [C++23]
*/
#include <ranges>
@@ -35,27 +35,27 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -65,27 +65,27 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -95,27 +95,27 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -128,51 +128,51 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_ranges
-# error "__cpp_lib_ranges should be defined in c++2b"
+# error "__cpp_lib_ranges should be defined in c++23"
# endif
# if __cpp_lib_ranges != 202106L
-# error "__cpp_lib_ranges should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should be defined in c++2b"
+# error "__cpp_lib_ranges_as_rvalue should be defined in c++23"
# endif
# if __cpp_lib_ranges_as_rvalue != 202207L
-# error "__cpp_lib_ranges_as_rvalue should have the value 202207L in c++2b"
+# error "__cpp_lib_ranges_as_rvalue should have the value 202207L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should be defined in c++2b"
+# error "__cpp_lib_ranges_chunk should be defined in c++23"
# endif
# if __cpp_lib_ranges_chunk != 202202L
-# error "__cpp_lib_ranges_chunk should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_chunk should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_chunk
@@ -182,10 +182,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should be defined in c++2b"
+# error "__cpp_lib_ranges_chunk_by should be defined in c++23"
# endif
# if __cpp_lib_ranges_chunk_by != 202202L
-# error "__cpp_lib_ranges_chunk_by should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_chunk_by should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_chunk_by
@@ -195,10 +195,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should be defined in c++2b"
+# error "__cpp_lib_ranges_join_with should be defined in c++23"
# endif
# if __cpp_lib_ranges_join_with != 202202L
-# error "__cpp_lib_ranges_join_with should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_join_with should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_join_with
@@ -208,10 +208,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should be defined in c++2b"
+# error "__cpp_lib_ranges_slide should be defined in c++23"
# endif
# if __cpp_lib_ranges_slide != 202202L
-# error "__cpp_lib_ranges_slide should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_slide should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_slide
@@ -221,10 +221,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should be defined in c++2b"
+# error "__cpp_lib_ranges_zip should be defined in c++23"
# endif
# if __cpp_lib_ranges_zip != 202110L
-# error "__cpp_lib_ranges_zip should have the value 202110L in c++2b"
+# error "__cpp_lib_ranges_zip should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_zip
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.compile.pass.cpp
index 38b9969e92910..f392165dcd421 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/regex.version.compile.pass.cpp
@@ -57,10 +57,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.compile.pass.cpp
index 55bf6f520a8ef..8e84a2ab394a6 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/scoped_allocator.version.compile.pass.cpp
@@ -55,10 +55,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.compile.pass.cpp
index 93240e17cff9d..4ebfbf068a6b8 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.compile.pass.cpp
@@ -61,10 +61,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_semaphore
-# error "__cpp_lib_semaphore should be defined in c++2b"
+# error "__cpp_lib_semaphore should be defined in c++23"
# endif
# if __cpp_lib_semaphore != 201907L
-# error "__cpp_lib_semaphore should have the value 201907L in c++2b"
+# error "__cpp_lib_semaphore should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_semaphore
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
index 90684859698c1..43e43a039dc0c 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
@@ -17,12 +17,12 @@
/* Constant Value
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
- __cpp_lib_associative_heterogeneous_erasure 202110L [C++2b]
+ __cpp_lib_associative_heterogeneous_erasure 202110L [C++23]
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_generic_associative_lookup 201304L [C++14]
__cpp_lib_node_extract 201606L [C++17]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <set>
@@ -35,7 +35,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -55,7 +55,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -65,7 +65,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -88,7 +88,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -101,7 +101,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -130,7 +130,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -143,7 +143,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifndef __cpp_lib_erase_if
@@ -175,24 +175,24 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++23"
# endif
# if __cpp_lib_associative_heterogeneous_erasure != 202110L
-# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_associative_heterogeneous_erasure
@@ -201,39 +201,39 @@
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_generic_associative_lookup
-# error "__cpp_lib_generic_associative_lookup should be defined in c++2b"
+# error "__cpp_lib_generic_associative_lookup should be defined in c++23"
# endif
# if __cpp_lib_generic_associative_lookup != 201304L
-# error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++2b"
+# error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_node_extract
-# error "__cpp_lib_node_extract should be defined in c++2b"
+# error "__cpp_lib_node_extract should be defined in c++23"
# endif
# if __cpp_lib_node_extract != 201606L
-# error "__cpp_lib_node_extract should have the value 201606L in c++2b"
+# error "__cpp_lib_node_extract should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.compile.pass.cpp
index a36f4b0e1291a..73abfa137d440 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/shared_mutex.version.compile.pass.cpp
@@ -114,10 +114,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SHARED_MUTEX)
# ifndef __cpp_lib_shared_mutex
-# error "__cpp_lib_shared_mutex should be defined in c++2b"
+# error "__cpp_lib_shared_mutex should be defined in c++23"
# endif
# if __cpp_lib_shared_mutex != 201505L
-# error "__cpp_lib_shared_mutex should have the value 201505L in c++2b"
+# error "__cpp_lib_shared_mutex should have the value 201505L in c++23"
# endif
# else
# ifdef __cpp_lib_shared_mutex
@@ -127,10 +127,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SHARED_MUTEX)
# ifndef __cpp_lib_shared_timed_mutex
-# error "__cpp_lib_shared_timed_mutex should be defined in c++2b"
+# error "__cpp_lib_shared_timed_mutex should be defined in c++23"
# endif
# if __cpp_lib_shared_timed_mutex != 201402L
-# error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++2b"
+# error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++23"
# endif
# else
# ifdef __cpp_lib_shared_timed_mutex
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/source_location.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/source_location.version.compile.pass.cpp
index 5b3d4b49517fa..1b8a875ec38ab 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/source_location.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/source_location.version.compile.pass.cpp
@@ -59,10 +59,10 @@
# if __has_builtin(__builtin_source_location) && !(defined(TEST_APPLE_CLANG_VER) && TEST_APPLE_CLANG_VER <= 1403)
# ifndef __cpp_lib_source_location
-# error "__cpp_lib_source_location should be defined in c++2b"
+# error "__cpp_lib_source_location should be defined in c++23"
# endif
# if __cpp_lib_source_location != 201907L
-# error "__cpp_lib_source_location should have the value 201907L in c++2b"
+# error "__cpp_lib_source_location should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_source_location
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/span.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/span.version.compile.pass.cpp
index a8ceea67c5892..7d8cd87da0f0f 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/span.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/span.version.compile.pass.cpp
@@ -52,10 +52,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_span
-# error "__cpp_lib_span should be defined in c++2b"
+# error "__cpp_lib_span should be defined in c++23"
# endif
# if __cpp_lib_span != 202002L
-# error "__cpp_lib_span should have the value 202002L in c++2b"
+# error "__cpp_lib_span should have the value 202002L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/stack.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/stack.version.compile.pass.cpp
index af17a9090fc69..4a3d76ba0c256 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/stack.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/stack.version.compile.pass.cpp
@@ -16,8 +16,8 @@
// Test the feature test macros defined by <stack>
/* Constant Value
- __cpp_lib_adaptor_iterator_pair_constructor 202106L [C++2b]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_adaptor_iterator_pair_constructor 202106L [C++23]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <stack>
@@ -26,58 +26,58 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++23"
# endif
# if __cpp_lib_adaptor_iterator_pair_constructor != 202106L
-# error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/stdatomic.h.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/stdatomic.h.version.compile.pass.cpp
index 8492b855fc62f..bd9a1f7d45472 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/stdatomic.h.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/stdatomic.h.version.compile.pass.cpp
@@ -18,7 +18,7 @@
// Test the feature test macros defined by <stdatomic.h>
/* Constant Value
- __cpp_lib_stdatomic_h 202011L [C++2b]
+ __cpp_lib_stdatomic_h 202011L [C++23]
*/
#include <stdatomic.h>
@@ -27,34 +27,34 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should be defined in c++2b"
+# error "__cpp_lib_stdatomic_h should be defined in c++23"
# endif
# if __cpp_lib_stdatomic_h != 202011L
-# error "__cpp_lib_stdatomic_h should have the value 202011L in c++2b"
+# error "__cpp_lib_stdatomic_h should have the value 202011L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
index 171d35839ce49..9dc03f923936a 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/string.version.compile.pass.cpp
@@ -21,10 +21,10 @@
__cpp_lib_constexpr_string 201907L [C++20]
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
__cpp_lib_starts_ends_with 201711L [C++20]
- __cpp_lib_string_contains 202011L [C++2b]
- __cpp_lib_string_resize_and_overwrite 202110L [C++2b]
+ __cpp_lib_string_contains 202011L [C++23]
+ __cpp_lib_string_resize_and_overwrite 202110L [C++23]
__cpp_lib_string_udls 201304L [C++14]
__cpp_lib_string_view 201606L [C++17]
201803L [C++20]
@@ -56,7 +56,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_starts_ends_with
@@ -64,11 +64,11 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_udls
@@ -102,7 +102,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_starts_ends_with
@@ -110,11 +110,11 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_udls
@@ -157,7 +157,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_starts_ends_with
@@ -165,11 +165,11 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_udls
@@ -230,7 +230,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifndef __cpp_lib_starts_ends_with
@@ -241,11 +241,11 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_udls
@@ -265,18 +265,18 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
@@ -285,32 +285,32 @@
# endif
# ifndef __cpp_lib_constexpr_string
-# error "__cpp_lib_constexpr_string should be defined in c++2b"
+# error "__cpp_lib_constexpr_string should be defined in c++23"
# endif
# if __cpp_lib_constexpr_string != 201907L
-# error "__cpp_lib_constexpr_string should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_string should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
@@ -319,38 +319,38 @@
# endif
# ifndef __cpp_lib_starts_ends_with
-# error "__cpp_lib_starts_ends_with should be defined in c++2b"
+# error "__cpp_lib_starts_ends_with should be defined in c++23"
# endif
# if __cpp_lib_starts_ends_with != 201711L
-# error "__cpp_lib_starts_ends_with should have the value 201711L in c++2b"
+# error "__cpp_lib_starts_ends_with should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should be defined in c++2b"
+# error "__cpp_lib_string_contains should be defined in c++23"
# endif
# if __cpp_lib_string_contains != 202011L
-# error "__cpp_lib_string_contains should have the value 202011L in c++2b"
+# error "__cpp_lib_string_contains should have the value 202011L in c++23"
# endif
# ifndef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should be defined in c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should be defined in c++23"
# endif
# if __cpp_lib_string_resize_and_overwrite != 202110L
-# error "__cpp_lib_string_resize_and_overwrite should have the value 202110L in c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should have the value 202110L in c++23"
# endif
# ifndef __cpp_lib_string_udls
-# error "__cpp_lib_string_udls should be defined in c++2b"
+# error "__cpp_lib_string_udls should be defined in c++23"
# endif
# if __cpp_lib_string_udls != 201304L
-# error "__cpp_lib_string_udls should have the value 201304L in c++2b"
+# error "__cpp_lib_string_udls should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_string_view
-# error "__cpp_lib_string_view should be defined in c++2b"
+# error "__cpp_lib_string_view should be defined in c++23"
# endif
# if __cpp_lib_string_view != 201803L
-# error "__cpp_lib_string_view should have the value 201803L in c++2b"
+# error "__cpp_lib_string_view should have the value 201803L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.compile.pass.cpp
index 7182347bfa777..08fe83d9b2c97 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.compile.pass.cpp
@@ -19,7 +19,7 @@
__cpp_lib_char8_t 201907L [C++20]
__cpp_lib_constexpr_string_view 201811L [C++20]
__cpp_lib_starts_ends_with 201711L [C++20]
- __cpp_lib_string_contains 202011L [C++2b]
+ __cpp_lib_string_contains 202011L [C++23]
__cpp_lib_string_view 201606L [C++17]
201803L [C++20]
*/
@@ -42,7 +42,7 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_view
@@ -64,7 +64,7 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_view
@@ -86,7 +86,7 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_view
@@ -126,7 +126,7 @@
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_view
@@ -140,10 +140,10 @@
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
@@ -152,31 +152,31 @@
# endif
# ifndef __cpp_lib_constexpr_string_view
-# error "__cpp_lib_constexpr_string_view should be defined in c++2b"
+# error "__cpp_lib_constexpr_string_view should be defined in c++23"
# endif
# if __cpp_lib_constexpr_string_view != 201811L
-# error "__cpp_lib_constexpr_string_view should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_string_view should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_starts_ends_with
-# error "__cpp_lib_starts_ends_with should be defined in c++2b"
+# error "__cpp_lib_starts_ends_with should be defined in c++23"
# endif
# if __cpp_lib_starts_ends_with != 201711L
-# error "__cpp_lib_starts_ends_with should have the value 201711L in c++2b"
+# error "__cpp_lib_starts_ends_with should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should be defined in c++2b"
+# error "__cpp_lib_string_contains should be defined in c++23"
# endif
# if __cpp_lib_string_contains != 202011L
-# error "__cpp_lib_string_contains should have the value 202011L in c++2b"
+# error "__cpp_lib_string_contains should have the value 202011L in c++23"
# endif
# ifndef __cpp_lib_string_view
-# error "__cpp_lib_string_view should be defined in c++2b"
+# error "__cpp_lib_string_view should be defined in c++23"
# endif
# if __cpp_lib_string_view != 201803L
-# error "__cpp_lib_string_view should have the value 201803L in c++2b"
+# error "__cpp_lib_string_view should have the value 201803L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
index 47f6c61e85ac8..bfa5de2e9b1d7 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
@@ -18,7 +18,7 @@
// Test the feature test macros defined by <thread>
/* Constant Value
- __cpp_lib_formatters 202302L [C++2b]
+ __cpp_lib_formatters 202302L [C++23]
__cpp_lib_jthread 201911L [C++20]
*/
@@ -28,7 +28,7 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_jthread
@@ -38,7 +38,7 @@
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_jthread
@@ -48,7 +48,7 @@
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_jthread
@@ -58,7 +58,7 @@
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# if !defined(_LIBCPP_VERSION)
@@ -78,10 +78,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_formatters
-# error "__cpp_lib_formatters should be defined in c++2b"
+# error "__cpp_lib_formatters should be defined in c++23"
# endif
# if __cpp_lib_formatters != 202302L
-# error "__cpp_lib_formatters should have the value 202302L in c++2b"
+# error "__cpp_lib_formatters should have the value 202302L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_formatters
@@ -91,10 +91,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_jthread
-# error "__cpp_lib_jthread should be defined in c++2b"
+# error "__cpp_lib_jthread should be defined in c++23"
# endif
# if __cpp_lib_jthread != 201911L
-# error "__cpp_lib_jthread should have the value 201911L in c++2b"
+# error "__cpp_lib_jthread should have the value 201911L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_jthread
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
index d3ddc4b48dc61..0beb09db8d591 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.compile.pass.cpp
@@ -19,7 +19,7 @@
__cpp_lib_apply 201603L [C++17]
__cpp_lib_constexpr_tuple 201811L [C++20]
__cpp_lib_make_from_tuple 201606L [C++17]
- __cpp_lib_ranges_zip 202110L [C++2b]
+ __cpp_lib_ranges_zip 202110L [C++23]
__cpp_lib_tuple_element_t 201402L [C++14]
__cpp_lib_tuples_by_type 201304L [C++14]
*/
@@ -42,7 +42,7 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_tuple_element_t
@@ -68,7 +68,7 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifndef __cpp_lib_tuple_element_t
@@ -106,7 +106,7 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifndef __cpp_lib_tuple_element_t
@@ -147,7 +147,7 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifndef __cpp_lib_tuple_element_t
@@ -167,32 +167,32 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_apply
-# error "__cpp_lib_apply should be defined in c++2b"
+# error "__cpp_lib_apply should be defined in c++23"
# endif
# if __cpp_lib_apply != 201603L
-# error "__cpp_lib_apply should have the value 201603L in c++2b"
+# error "__cpp_lib_apply should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_constexpr_tuple
-# error "__cpp_lib_constexpr_tuple should be defined in c++2b"
+# error "__cpp_lib_constexpr_tuple should be defined in c++23"
# endif
# if __cpp_lib_constexpr_tuple != 201811L
-# error "__cpp_lib_constexpr_tuple should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_tuple should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_make_from_tuple
-# error "__cpp_lib_make_from_tuple should be defined in c++2b"
+# error "__cpp_lib_make_from_tuple should be defined in c++23"
# endif
# if __cpp_lib_make_from_tuple != 201606L
-# error "__cpp_lib_make_from_tuple should have the value 201606L in c++2b"
+# error "__cpp_lib_make_from_tuple should have the value 201606L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should be defined in c++2b"
+# error "__cpp_lib_ranges_zip should be defined in c++23"
# endif
# if __cpp_lib_ranges_zip != 202110L
-# error "__cpp_lib_ranges_zip should have the value 202110L in c++2b"
+# error "__cpp_lib_ranges_zip should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_zip
@@ -201,17 +201,17 @@
# endif
# ifndef __cpp_lib_tuple_element_t
-# error "__cpp_lib_tuple_element_t should be defined in c++2b"
+# error "__cpp_lib_tuple_element_t should be defined in c++23"
# endif
# if __cpp_lib_tuple_element_t != 201402L
-# error "__cpp_lib_tuple_element_t should have the value 201402L in c++2b"
+# error "__cpp_lib_tuple_element_t should have the value 201402L in c++23"
# endif
# ifndef __cpp_lib_tuples_by_type
-# error "__cpp_lib_tuples_by_type should be defined in c++2b"
+# error "__cpp_lib_tuples_by_type should be defined in c++23"
# endif
# if __cpp_lib_tuples_by_type != 201304L
-# error "__cpp_lib_tuples_by_type should have the value 201304L in c++2b"
+# error "__cpp_lib_tuples_by_type should have the value 201304L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
index 89a1dcf67f7e8..67b02a5db15f7 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
@@ -28,10 +28,10 @@
__cpp_lib_is_nothrow_convertible 201806L [C++20]
__cpp_lib_is_null_pointer 201309L [C++14]
__cpp_lib_is_pointer_interconvertible 201907L [C++20]
- __cpp_lib_is_scoped_enum 202011L [C++2b]
+ __cpp_lib_is_scoped_enum 202011L [C++23]
__cpp_lib_is_swappable 201603L [C++17]
__cpp_lib_logical_traits 201510L [C++17]
- __cpp_lib_reference_from_temporary 202202L [C++2b]
+ __cpp_lib_reference_from_temporary 202202L [C++23]
__cpp_lib_remove_cvref 201711L [C++20]
__cpp_lib_result_of_sfinae 201210L [C++14]
__cpp_lib_transformation_trait_aliases 201304L [C++14]
@@ -94,7 +94,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifdef __cpp_lib_is_swappable
@@ -106,7 +106,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifdef __cpp_lib_remove_cvref
@@ -193,7 +193,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifdef __cpp_lib_is_swappable
@@ -205,7 +205,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifdef __cpp_lib_remove_cvref
@@ -310,7 +310,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifndef __cpp_lib_is_swappable
@@ -328,7 +328,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifdef __cpp_lib_remove_cvref
@@ -466,7 +466,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifndef __cpp_lib_is_swappable
@@ -484,7 +484,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifndef __cpp_lib_remove_cvref
@@ -532,67 +532,67 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_bool_constant
-# error "__cpp_lib_bool_constant should be defined in c++2b"
+# error "__cpp_lib_bool_constant should be defined in c++23"
# endif
# if __cpp_lib_bool_constant != 201505L
-# error "__cpp_lib_bool_constant should have the value 201505L in c++2b"
+# error "__cpp_lib_bool_constant should have the value 201505L in c++23"
# endif
# ifndef __cpp_lib_bounded_array_traits
-# error "__cpp_lib_bounded_array_traits should be defined in c++2b"
+# error "__cpp_lib_bounded_array_traits should be defined in c++23"
# endif
# if __cpp_lib_bounded_array_traits != 201902L
-# error "__cpp_lib_bounded_array_traits should have the value 201902L in c++2b"
+# error "__cpp_lib_bounded_array_traits should have the value 201902L in c++23"
# endif
# ifndef __cpp_lib_has_unique_object_representations
-# error "__cpp_lib_has_unique_object_representations should be defined in c++2b"
+# error "__cpp_lib_has_unique_object_representations should be defined in c++23"
# endif
# if __cpp_lib_has_unique_object_representations != 201606L
-# error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++2b"
+# error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_integral_constant_callable
-# error "__cpp_lib_integral_constant_callable should be defined in c++2b"
+# error "__cpp_lib_integral_constant_callable should be defined in c++23"
# endif
# if __cpp_lib_integral_constant_callable != 201304L
-# error "__cpp_lib_integral_constant_callable should have the value 201304L in c++2b"
+# error "__cpp_lib_integral_constant_callable should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_is_aggregate
-# error "__cpp_lib_is_aggregate should be defined in c++2b"
+# error "__cpp_lib_is_aggregate should be defined in c++23"
# endif
# if __cpp_lib_is_aggregate != 201703L
-# error "__cpp_lib_is_aggregate should have the value 201703L in c++2b"
+# error "__cpp_lib_is_aggregate should have the value 201703L in c++23"
# endif
# ifndef __cpp_lib_is_constant_evaluated
-# error "__cpp_lib_is_constant_evaluated should be defined in c++2b"
+# error "__cpp_lib_is_constant_evaluated should be defined in c++23"
# endif
# if __cpp_lib_is_constant_evaluated != 201811L
-# error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++2b"
+# error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_is_final
-# error "__cpp_lib_is_final should be defined in c++2b"
+# error "__cpp_lib_is_final should be defined in c++23"
# endif
# if __cpp_lib_is_final != 201402L
-# error "__cpp_lib_is_final should have the value 201402L in c++2b"
+# error "__cpp_lib_is_final should have the value 201402L in c++23"
# endif
# ifndef __cpp_lib_is_invocable
-# error "__cpp_lib_is_invocable should be defined in c++2b"
+# error "__cpp_lib_is_invocable should be defined in c++23"
# endif
# if __cpp_lib_is_invocable != 201703L
-# error "__cpp_lib_is_invocable should have the value 201703L in c++2b"
+# error "__cpp_lib_is_invocable should have the value 201703L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_is_layout_compatible
-# error "__cpp_lib_is_layout_compatible should be defined in c++2b"
+# error "__cpp_lib_is_layout_compatible should be defined in c++23"
# endif
# if __cpp_lib_is_layout_compatible != 201907L
-# error "__cpp_lib_is_layout_compatible should have the value 201907L in c++2b"
+# error "__cpp_lib_is_layout_compatible should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_is_layout_compatible
@@ -601,25 +601,25 @@
# endif
# ifndef __cpp_lib_is_nothrow_convertible
-# error "__cpp_lib_is_nothrow_convertible should be defined in c++2b"
+# error "__cpp_lib_is_nothrow_convertible should be defined in c++23"
# endif
# if __cpp_lib_is_nothrow_convertible != 201806L
-# error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++2b"
+# error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_is_null_pointer
-# error "__cpp_lib_is_null_pointer should be defined in c++2b"
+# error "__cpp_lib_is_null_pointer should be defined in c++23"
# endif
# if __cpp_lib_is_null_pointer != 201309L
-# error "__cpp_lib_is_null_pointer should have the value 201309L in c++2b"
+# error "__cpp_lib_is_null_pointer should have the value 201309L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_is_pointer_interconvertible
-# error "__cpp_lib_is_pointer_interconvertible should be defined in c++2b"
+# error "__cpp_lib_is_pointer_interconvertible should be defined in c++23"
# endif
# if __cpp_lib_is_pointer_interconvertible != 201907L
-# error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++2b"
+# error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_is_pointer_interconvertible
@@ -628,32 +628,32 @@
# endif
# ifndef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should be defined in c++2b"
+# error "__cpp_lib_is_scoped_enum should be defined in c++23"
# endif
# if __cpp_lib_is_scoped_enum != 202011L
-# error "__cpp_lib_is_scoped_enum should have the value 202011L in c++2b"
+# error "__cpp_lib_is_scoped_enum should have the value 202011L in c++23"
# endif
# ifndef __cpp_lib_is_swappable
-# error "__cpp_lib_is_swappable should be defined in c++2b"
+# error "__cpp_lib_is_swappable should be defined in c++23"
# endif
# if __cpp_lib_is_swappable != 201603L
-# error "__cpp_lib_is_swappable should have the value 201603L in c++2b"
+# error "__cpp_lib_is_swappable should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_logical_traits
-# error "__cpp_lib_logical_traits should be defined in c++2b"
+# error "__cpp_lib_logical_traits should be defined in c++23"
# endif
# if __cpp_lib_logical_traits != 201510L
-# error "__cpp_lib_logical_traits should have the value 201510L in c++2b"
+# error "__cpp_lib_logical_traits should have the value 201510L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should be defined in c++2b"
+# error "__cpp_lib_reference_from_temporary should be defined in c++23"
# endif
# if __cpp_lib_reference_from_temporary != 202202L
-# error "__cpp_lib_reference_from_temporary should have the value 202202L in c++2b"
+# error "__cpp_lib_reference_from_temporary should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_reference_from_temporary
@@ -662,45 +662,45 @@
# endif
# ifndef __cpp_lib_remove_cvref
-# error "__cpp_lib_remove_cvref should be defined in c++2b"
+# error "__cpp_lib_remove_cvref should be defined in c++23"
# endif
# if __cpp_lib_remove_cvref != 201711L
-# error "__cpp_lib_remove_cvref should have the value 201711L in c++2b"
+# error "__cpp_lib_remove_cvref should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_result_of_sfinae
-# error "__cpp_lib_result_of_sfinae should be defined in c++2b"
+# error "__cpp_lib_result_of_sfinae should be defined in c++23"
# endif
# if __cpp_lib_result_of_sfinae != 201210L
-# error "__cpp_lib_result_of_sfinae should have the value 201210L in c++2b"
+# error "__cpp_lib_result_of_sfinae should have the value 201210L in c++23"
# endif
# ifndef __cpp_lib_transformation_trait_aliases
-# error "__cpp_lib_transformation_trait_aliases should be defined in c++2b"
+# error "__cpp_lib_transformation_trait_aliases should be defined in c++23"
# endif
# if __cpp_lib_transformation_trait_aliases != 201304L
-# error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++2b"
+# error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_type_identity
-# error "__cpp_lib_type_identity should be defined in c++2b"
+# error "__cpp_lib_type_identity should be defined in c++23"
# endif
# if __cpp_lib_type_identity != 201806L
-# error "__cpp_lib_type_identity should have the value 201806L in c++2b"
+# error "__cpp_lib_type_identity should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_type_trait_variable_templates
-# error "__cpp_lib_type_trait_variable_templates should be defined in c++2b"
+# error "__cpp_lib_type_trait_variable_templates should be defined in c++23"
# endif
# if __cpp_lib_type_trait_variable_templates != 201510L
-# error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++2b"
+# error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++23"
# endif
# ifndef __cpp_lib_void_t
-# error "__cpp_lib_void_t should be defined in c++2b"
+# error "__cpp_lib_void_t should be defined in c++23"
# endif
# if __cpp_lib_void_t != 201411L
-# error "__cpp_lib_void_t should have the value 201411L in c++2b"
+# error "__cpp_lib_void_t should have the value 201411L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/typeinfo.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/typeinfo.version.compile.pass.cpp
index 3cb2502d0af69..a68f6ba03fe77 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/typeinfo.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/typeinfo.version.compile.pass.cpp
@@ -16,7 +16,7 @@
// Test the feature test macros defined by <typeinfo>
/* Constant Value
- __cpp_lib_constexpr_typeinfo 202106L [C++2b]
+ __cpp_lib_constexpr_typeinfo 202106L [C++23]
*/
#include <typeinfo>
@@ -25,34 +25,34 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should be defined in c++2b"
+# error "__cpp_lib_constexpr_typeinfo should be defined in c++23"
# endif
# if __cpp_lib_constexpr_typeinfo != 202106L
-# error "__cpp_lib_constexpr_typeinfo should have the value 202106L in c++2b"
+# error "__cpp_lib_constexpr_typeinfo should have the value 202106L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.compile.pass.cpp
index 038420c4079d2..4e3c7f911c9e4 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_map.version.compile.pass.cpp
@@ -17,12 +17,12 @@
/* Constant Value
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
- __cpp_lib_associative_heterogeneous_erasure 202110L [C++2b]
+ __cpp_lib_associative_heterogeneous_erasure 202110L [C++23]
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_generic_unordered_lookup 201811L [C++20]
__cpp_lib_node_extract 201606L [C++17]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
__cpp_lib_unordered_map_try_emplace 201411L [C++17]
*/
@@ -36,7 +36,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -56,7 +56,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_unordered_map_try_emplace
@@ -70,7 +70,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -90,7 +90,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_unordered_map_try_emplace
@@ -107,7 +107,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -133,7 +133,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifndef __cpp_lib_unordered_map_try_emplace
@@ -153,7 +153,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifndef __cpp_lib_erase_if
@@ -185,7 +185,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifndef __cpp_lib_unordered_map_try_emplace
@@ -198,18 +198,18 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++23"
# endif
# if __cpp_lib_associative_heterogeneous_erasure != 202110L
-# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_associative_heterogeneous_erasure
@@ -218,39 +218,39 @@
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_generic_unordered_lookup
-# error "__cpp_lib_generic_unordered_lookup should be defined in c++2b"
+# error "__cpp_lib_generic_unordered_lookup should be defined in c++23"
# endif
# if __cpp_lib_generic_unordered_lookup != 201811L
-# error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++2b"
+# error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_node_extract
-# error "__cpp_lib_node_extract should be defined in c++2b"
+# error "__cpp_lib_node_extract should be defined in c++23"
# endif
# if __cpp_lib_node_extract != 201606L
-# error "__cpp_lib_node_extract should have the value 201606L in c++2b"
+# error "__cpp_lib_node_extract should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
@@ -259,10 +259,10 @@
# endif
# ifndef __cpp_lib_unordered_map_try_emplace
-# error "__cpp_lib_unordered_map_try_emplace should be defined in c++2b"
+# error "__cpp_lib_unordered_map_try_emplace should be defined in c++23"
# endif
# if __cpp_lib_unordered_map_try_emplace != 201411L
-# error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++2b"
+# error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.compile.pass.cpp
index 13092c1a0e469..3302f7f5bdb36 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/unordered_set.version.compile.pass.cpp
@@ -17,12 +17,12 @@
/* Constant Value
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
- __cpp_lib_associative_heterogeneous_erasure 202110L [C++2b]
+ __cpp_lib_associative_heterogeneous_erasure 202110L [C++23]
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_generic_unordered_lookup 201811L [C++20]
__cpp_lib_node_extract 201606L [C++17]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <unordered_set>
@@ -35,7 +35,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -55,7 +55,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -65,7 +65,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -85,7 +85,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -98,7 +98,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_erase_if
@@ -124,7 +124,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -137,7 +137,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifndef __cpp_lib_erase_if
@@ -169,24 +169,24 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++23"
# endif
# if __cpp_lib_associative_heterogeneous_erasure != 202110L
-# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_associative_heterogeneous_erasure
@@ -195,39 +195,39 @@
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_generic_unordered_lookup
-# error "__cpp_lib_generic_unordered_lookup should be defined in c++2b"
+# error "__cpp_lib_generic_unordered_lookup should be defined in c++23"
# endif
# if __cpp_lib_generic_unordered_lookup != 201811L
-# error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++2b"
+# error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_node_extract
-# error "__cpp_lib_node_extract should be defined in c++2b"
+# error "__cpp_lib_node_extract should be defined in c++23"
# endif
# if __cpp_lib_node_extract != 201606L
-# error "__cpp_lib_node_extract should have the value 201606L in c++2b"
+# error "__cpp_lib_node_extract should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
index 6a92799b1f026..b0e4014bdff47 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.compile.pass.cpp
@@ -20,13 +20,13 @@
__cpp_lib_constexpr_algorithms 201806L [C++20]
__cpp_lib_constexpr_utility 201811L [C++20]
__cpp_lib_exchange_function 201304L [C++14]
- __cpp_lib_forward_like 202207L [C++2b]
+ __cpp_lib_forward_like 202207L [C++23]
__cpp_lib_integer_comparison_functions 202002L [C++20]
__cpp_lib_integer_sequence 201304L [C++14]
- __cpp_lib_ranges_zip 202110L [C++2b]
- __cpp_lib_to_underlying 202102L [C++2b]
+ __cpp_lib_ranges_zip 202110L [C++23]
+ __cpp_lib_to_underlying 202102L [C++23]
__cpp_lib_tuples_by_type 201304L [C++14]
- __cpp_lib_unreachable 202202L [C++2b]
+ __cpp_lib_unreachable 202202L [C++23]
*/
#include <utility>
@@ -51,7 +51,7 @@
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifdef __cpp_lib_integer_comparison_functions
@@ -63,11 +63,11 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifdef __cpp_lib_tuples_by_type
@@ -75,7 +75,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -100,7 +100,7 @@
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifdef __cpp_lib_integer_comparison_functions
@@ -115,11 +115,11 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifndef __cpp_lib_tuples_by_type
@@ -130,7 +130,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -158,7 +158,7 @@
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifdef __cpp_lib_integer_comparison_functions
@@ -173,11 +173,11 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifndef __cpp_lib_tuples_by_type
@@ -188,7 +188,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -222,7 +222,7 @@
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifndef __cpp_lib_integer_comparison_functions
@@ -240,11 +240,11 @@
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifndef __cpp_lib_tuples_by_type
@@ -255,66 +255,66 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_as_const
-# error "__cpp_lib_as_const should be defined in c++2b"
+# error "__cpp_lib_as_const should be defined in c++23"
# endif
# if __cpp_lib_as_const != 201510L
-# error "__cpp_lib_as_const should have the value 201510L in c++2b"
+# error "__cpp_lib_as_const should have the value 201510L in c++23"
# endif
# ifndef __cpp_lib_constexpr_algorithms
-# error "__cpp_lib_constexpr_algorithms should be defined in c++2b"
+# error "__cpp_lib_constexpr_algorithms should be defined in c++23"
# endif
# if __cpp_lib_constexpr_algorithms != 201806L
-# error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++2b"
+# error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_constexpr_utility
-# error "__cpp_lib_constexpr_utility should be defined in c++2b"
+# error "__cpp_lib_constexpr_utility should be defined in c++23"
# endif
# if __cpp_lib_constexpr_utility != 201811L
-# error "__cpp_lib_constexpr_utility should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_utility should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_exchange_function
-# error "__cpp_lib_exchange_function should be defined in c++2b"
+# error "__cpp_lib_exchange_function should be defined in c++23"
# endif
# if __cpp_lib_exchange_function != 201304L
-# error "__cpp_lib_exchange_function should have the value 201304L in c++2b"
+# error "__cpp_lib_exchange_function should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should be defined in c++2b"
+# error "__cpp_lib_forward_like should be defined in c++23"
# endif
# if __cpp_lib_forward_like != 202207L
-# error "__cpp_lib_forward_like should have the value 202207L in c++2b"
+# error "__cpp_lib_forward_like should have the value 202207L in c++23"
# endif
# ifndef __cpp_lib_integer_comparison_functions
-# error "__cpp_lib_integer_comparison_functions should be defined in c++2b"
+# error "__cpp_lib_integer_comparison_functions should be defined in c++23"
# endif
# if __cpp_lib_integer_comparison_functions != 202002L
-# error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++2b"
+# error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_integer_sequence
-# error "__cpp_lib_integer_sequence should be defined in c++2b"
+# error "__cpp_lib_integer_sequence should be defined in c++23"
# endif
# if __cpp_lib_integer_sequence != 201304L
-# error "__cpp_lib_integer_sequence should have the value 201304L in c++2b"
+# error "__cpp_lib_integer_sequence should have the value 201304L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should be defined in c++2b"
+# error "__cpp_lib_ranges_zip should be defined in c++23"
# endif
# if __cpp_lib_ranges_zip != 202110L
-# error "__cpp_lib_ranges_zip should have the value 202110L in c++2b"
+# error "__cpp_lib_ranges_zip should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_zip
@@ -323,24 +323,24 @@
# endif
# ifndef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should be defined in c++2b"
+# error "__cpp_lib_to_underlying should be defined in c++23"
# endif
# if __cpp_lib_to_underlying != 202102L
-# error "__cpp_lib_to_underlying should have the value 202102L in c++2b"
+# error "__cpp_lib_to_underlying should have the value 202102L in c++23"
# endif
# ifndef __cpp_lib_tuples_by_type
-# error "__cpp_lib_tuples_by_type should be defined in c++2b"
+# error "__cpp_lib_tuples_by_type should be defined in c++23"
# endif
# if __cpp_lib_tuples_by_type != 201304L
-# error "__cpp_lib_tuples_by_type should have the value 201304L in c++2b"
+# error "__cpp_lib_tuples_by_type should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should be defined in c++2b"
+# error "__cpp_lib_unreachable should be defined in c++23"
# endif
# if __cpp_lib_unreachable != 202202L
-# error "__cpp_lib_unreachable should have the value 202202L in c++2b"
+# error "__cpp_lib_unreachable should have the value 202202L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
index dcee42e0b51a2..02e69c6d6df89 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/variant.version.compile.pass.cpp
@@ -55,10 +55,10 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_variant
-# error "__cpp_lib_variant should be defined in c++2b"
+# error "__cpp_lib_variant should be defined in c++23"
# endif
# if __cpp_lib_variant != 202102L
-# error "__cpp_lib_variant should have the value 202102L in c++2b"
+# error "__cpp_lib_variant should have the value 202102L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp
index 2d9b6bfe870b9..9c4206065d76f 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/vector.version.compile.pass.cpp
@@ -21,7 +21,7 @@
__cpp_lib_erase_if 202002L [C++20]
__cpp_lib_incomplete_container_elements 201505L [C++17]
__cpp_lib_nonmember_container_access 201411L [C++17]
- __cpp_lib_ranges_to_container 202202L [C++2b]
+ __cpp_lib_ranges_to_container 202202L [C++23]
*/
#include <vector>
@@ -50,7 +50,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 14
@@ -76,7 +76,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 17
@@ -111,7 +111,7 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER == 20
@@ -152,52 +152,52 @@
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_constexpr_vector
-# error "__cpp_lib_constexpr_vector should be defined in c++2b"
+# error "__cpp_lib_constexpr_vector should be defined in c++23"
# endif
# if __cpp_lib_constexpr_vector != 201907L
-# error "__cpp_lib_constexpr_vector should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_vector should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_incomplete_container_elements
-# error "__cpp_lib_incomplete_container_elements should be defined in c++2b"
+# error "__cpp_lib_incomplete_container_elements should be defined in c++23"
# endif
# if __cpp_lib_incomplete_container_elements != 201505L
-# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++2b"
+# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
diff --git a/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp b/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
index 74073cfcf1c13..e31837e1e2ab1 100644
--- a/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
+++ b/libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
@@ -16,16 +16,16 @@
// Test the feature test macros defined by <version>
/* Constant Value
- __cpp_lib_adaptor_iterator_pair_constructor 202106L [C++2b]
+ __cpp_lib_adaptor_iterator_pair_constructor 202106L [C++23]
__cpp_lib_addressof_constexpr 201603L [C++17]
- __cpp_lib_allocate_at_least 202106L [C++2b]
+ __cpp_lib_allocate_at_least 202106L [C++23]
__cpp_lib_allocator_traits_is_always_equal 201411L [C++17]
__cpp_lib_any 201606L [C++17]
__cpp_lib_apply 201603L [C++17]
__cpp_lib_array_constexpr 201603L [C++17]
201811L [C++20]
__cpp_lib_as_const 201510L [C++17]
- __cpp_lib_associative_heterogeneous_erasure 202110L [C++2b]
+ __cpp_lib_associative_heterogeneous_erasure 202110L [C++23]
__cpp_lib_assume_aligned 201811L [C++20]
__cpp_lib_atomic_flag_test 201907L [C++20]
__cpp_lib_atomic_float 201711L [C++20]
@@ -36,7 +36,7 @@
__cpp_lib_atomic_value_initialization 201911L [C++20]
__cpp_lib_atomic_wait 201907L [C++20]
__cpp_lib_barrier 201907L [C++20]
- __cpp_lib_bind_back 202202L [C++2b]
+ __cpp_lib_bind_back 202202L [C++23]
__cpp_lib_bind_front 201907L [C++20]
__cpp_lib_bit_cast 201806L [C++20]
__cpp_lib_bitops 201907L [C++20]
@@ -44,7 +44,7 @@
__cpp_lib_bounded_array_traits 201902L [C++20]
__cpp_lib_boyer_moore_searcher 201603L [C++17]
__cpp_lib_byte 201603L [C++17]
- __cpp_lib_byteswap 202110L [C++2b]
+ __cpp_lib_byteswap 202110L [C++23]
__cpp_lib_char8_t 201907L [C++20]
__cpp_lib_chrono 201611L [C++17]
__cpp_lib_chrono_udls 201304L [C++14]
@@ -52,20 +52,20 @@
__cpp_lib_complex_udls 201309L [C++14]
__cpp_lib_concepts 202002L [C++20]
__cpp_lib_constexpr_algorithms 201806L [C++20]
- __cpp_lib_constexpr_bitset 202207L [C++2b]
- __cpp_lib_constexpr_charconv 202207L [C++2b]
- __cpp_lib_constexpr_cmath 202202L [C++2b]
+ __cpp_lib_constexpr_bitset 202207L [C++23]
+ __cpp_lib_constexpr_charconv 202207L [C++23]
+ __cpp_lib_constexpr_cmath 202202L [C++23]
__cpp_lib_constexpr_complex 201711L [C++20]
__cpp_lib_constexpr_dynamic_alloc 201907L [C++20]
__cpp_lib_constexpr_functional 201907L [C++20]
__cpp_lib_constexpr_iterator 201811L [C++20]
__cpp_lib_constexpr_memory 201811L [C++20]
- 202202L [C++2b]
+ 202202L [C++23]
__cpp_lib_constexpr_numeric 201911L [C++20]
__cpp_lib_constexpr_string 201907L [C++20]
__cpp_lib_constexpr_string_view 201811L [C++20]
__cpp_lib_constexpr_tuple 201811L [C++20]
- __cpp_lib_constexpr_typeinfo 202106L [C++2b]
+ __cpp_lib_constexpr_typeinfo 202106L [C++23]
__cpp_lib_constexpr_utility 201811L [C++20]
__cpp_lib_constexpr_vector 201907L [C++20]
__cpp_lib_coroutine 201902L [C++20]
@@ -76,12 +76,12 @@
__cpp_lib_exchange_function 201304L [C++14]
__cpp_lib_execution 201603L [C++17]
201902L [C++20]
- __cpp_lib_expected 202211L [C++2b]
+ __cpp_lib_expected 202211L [C++23]
__cpp_lib_filesystem 201703L [C++17]
__cpp_lib_format 202106L [C++20]
- __cpp_lib_format_ranges 202207L [C++2b]
- __cpp_lib_formatters 202302L [C++2b]
- __cpp_lib_forward_like 202207L [C++2b]
+ __cpp_lib_format_ranges 202207L [C++23]
+ __cpp_lib_formatters 202302L [C++23]
+ __cpp_lib_forward_like 202207L [C++23]
__cpp_lib_gcd_lcm 201606L [C++17]
__cpp_lib_generic_associative_lookup 201304L [C++14]
__cpp_lib_generic_unordered_lookup 201811L [C++20]
@@ -95,7 +95,7 @@
__cpp_lib_integral_constant_callable 201304L [C++14]
__cpp_lib_interpolate 201902L [C++20]
__cpp_lib_invoke 201411L [C++17]
- __cpp_lib_invoke_r 202106L [C++2b]
+ __cpp_lib_invoke_r 202106L [C++23]
__cpp_lib_is_aggregate 201703L [C++17]
__cpp_lib_is_constant_evaluated 201811L [C++20]
__cpp_lib_is_final 201402L [C++14]
@@ -104,7 +104,7 @@
__cpp_lib_is_nothrow_convertible 201806L [C++20]
__cpp_lib_is_null_pointer 201309L [C++14]
__cpp_lib_is_pointer_interconvertible 201907L [C++20]
- __cpp_lib_is_scoped_enum 202011L [C++2b]
+ __cpp_lib_is_scoped_enum 202011L [C++23]
__cpp_lib_is_swappable 201603L [C++17]
__cpp_lib_jthread 201911L [C++20]
__cpp_lib_latch 201907L [C++20]
@@ -117,32 +117,32 @@
__cpp_lib_map_try_emplace 201411L [C++17]
__cpp_lib_math_constants 201907L [C++20]
__cpp_lib_math_special_functions 201603L [C++17]
- __cpp_lib_mdspan 202207L [C++2b]
+ __cpp_lib_mdspan 202207L [C++23]
__cpp_lib_memory_resource 201603L [C++17]
__cpp_lib_move_iterator_concept 202207L [C++20]
- __cpp_lib_move_only_function 202110L [C++2b]
+ __cpp_lib_move_only_function 202110L [C++23]
__cpp_lib_node_extract 201606L [C++17]
__cpp_lib_nonmember_container_access 201411L [C++17]
__cpp_lib_not_fn 201603L [C++17]
__cpp_lib_null_iterators 201304L [C++14]
__cpp_lib_optional 201606L [C++17]
- 202110L [C++2b]
- __cpp_lib_out_ptr 202106L [C++2b]
+ 202110L [C++23]
+ __cpp_lib_out_ptr 202106L [C++23]
__cpp_lib_parallel_algorithm 201603L [C++17]
__cpp_lib_polymorphic_allocator 201902L [C++20]
__cpp_lib_quoted_string_io 201304L [C++14]
__cpp_lib_ranges 202106L [C++20]
- __cpp_lib_ranges_as_rvalue 202207L [C++2b]
- __cpp_lib_ranges_chunk 202202L [C++2b]
- __cpp_lib_ranges_chunk_by 202202L [C++2b]
- __cpp_lib_ranges_iota 202202L [C++2b]
- __cpp_lib_ranges_join_with 202202L [C++2b]
- __cpp_lib_ranges_slide 202202L [C++2b]
- __cpp_lib_ranges_starts_ends_with 202106L [C++2b]
- __cpp_lib_ranges_to_container 202202L [C++2b]
- __cpp_lib_ranges_zip 202110L [C++2b]
+ __cpp_lib_ranges_as_rvalue 202207L [C++23]
+ __cpp_lib_ranges_chunk 202202L [C++23]
+ __cpp_lib_ranges_chunk_by 202202L [C++23]
+ __cpp_lib_ranges_iota 202202L [C++23]
+ __cpp_lib_ranges_join_with 202202L [C++23]
+ __cpp_lib_ranges_slide 202202L [C++23]
+ __cpp_lib_ranges_starts_ends_with 202106L [C++23]
+ __cpp_lib_ranges_to_container 202202L [C++23]
+ __cpp_lib_ranges_zip 202110L [C++23]
__cpp_lib_raw_memory_algorithms 201606L [C++17]
- __cpp_lib_reference_from_temporary 202202L [C++2b]
+ __cpp_lib_reference_from_temporary 202202L [C++23]
__cpp_lib_remove_cvref 201711L [C++20]
__cpp_lib_result_of_sfinae 201210L [C++14]
__cpp_lib_robust_nonmodifying_seq_ops 201304L [C++14]
@@ -158,13 +158,13 @@
__cpp_lib_smart_ptr_for_overwrite 202002L [C++20]
__cpp_lib_source_location 201907L [C++20]
__cpp_lib_span 202002L [C++20]
- __cpp_lib_spanstream 202106L [C++2b]
+ __cpp_lib_spanstream 202106L [C++23]
__cpp_lib_ssize 201902L [C++20]
- __cpp_lib_stacktrace 202011L [C++2b]
+ __cpp_lib_stacktrace 202011L [C++23]
__cpp_lib_starts_ends_with 201711L [C++20]
- __cpp_lib_stdatomic_h 202011L [C++2b]
- __cpp_lib_string_contains 202011L [C++2b]
- __cpp_lib_string_resize_and_overwrite 202110L [C++2b]
+ __cpp_lib_stdatomic_h 202011L [C++23]
+ __cpp_lib_string_contains 202011L [C++23]
+ __cpp_lib_string_resize_and_overwrite 202110L [C++23]
__cpp_lib_string_udls 201304L [C++14]
__cpp_lib_string_view 201606L [C++17]
201803L [C++20]
@@ -173,7 +173,7 @@
__cpp_lib_to_address 201711L [C++20]
__cpp_lib_to_array 201907L [C++20]
__cpp_lib_to_chars 201611L [C++17]
- __cpp_lib_to_underlying 202102L [C++2b]
+ __cpp_lib_to_underlying 202102L [C++23]
__cpp_lib_transformation_trait_aliases 201304L [C++14]
__cpp_lib_transparent_operators 201210L [C++14]
201510L [C++17]
@@ -183,7 +183,7 @@
__cpp_lib_type_trait_variable_templates 201510L [C++17]
__cpp_lib_uncaught_exceptions 201411L [C++17]
__cpp_lib_unordered_map_try_emplace 201411L [C++17]
- __cpp_lib_unreachable 202202L [C++2b]
+ __cpp_lib_unreachable 202202L [C++23]
__cpp_lib_unwrap_ref 201811L [C++20]
__cpp_lib_variant 202102L [C++17]
__cpp_lib_void_t 201411L [C++17]
@@ -195,7 +195,7 @@
#if TEST_STD_VER < 14
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_addressof_constexpr
@@ -203,7 +203,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifdef __cpp_lib_allocator_traits_is_always_equal
@@ -227,7 +227,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_assume_aligned
@@ -271,7 +271,7 @@
# endif
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifdef __cpp_lib_bind_front
@@ -303,7 +303,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifdef __cpp_lib_char8_t
@@ -335,15 +335,15 @@
# endif
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_complex
@@ -383,7 +383,7 @@
# endif
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_utility
@@ -423,7 +423,7 @@
# endif
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
# ifdef __cpp_lib_filesystem
@@ -435,15 +435,15 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifdef __cpp_lib_gcd_lcm
@@ -499,7 +499,7 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifdef __cpp_lib_is_aggregate
@@ -535,7 +535,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifdef __cpp_lib_is_swappable
@@ -587,7 +587,7 @@
# endif
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
# ifdef __cpp_lib_memory_resource
@@ -599,7 +599,7 @@
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifdef __cpp_lib_node_extract
@@ -623,7 +623,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# ifdef __cpp_lib_parallel_algorithm
@@ -643,39 +643,39 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_raw_memory_algorithms
@@ -683,7 +683,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifdef __cpp_lib_remove_cvref
@@ -743,7 +743,7 @@
# endif
# ifdef __cpp_lib_spanstream
-# error "__cpp_lib_spanstream should not be defined before c++2b"
+# error "__cpp_lib_spanstream should not be defined before c++23"
# endif
# ifdef __cpp_lib_ssize
@@ -751,7 +751,7 @@
# endif
# ifdef __cpp_lib_stacktrace
-# error "__cpp_lib_stacktrace should not be defined before c++2b"
+# error "__cpp_lib_stacktrace should not be defined before c++23"
# endif
# ifdef __cpp_lib_starts_ends_with
@@ -759,15 +759,15 @@
# endif
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_udls
@@ -799,7 +799,7 @@
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifdef __cpp_lib_transformation_trait_aliases
@@ -835,7 +835,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
# ifdef __cpp_lib_unwrap_ref
@@ -853,7 +853,7 @@
#elif TEST_STD_VER == 14
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifdef __cpp_lib_addressof_constexpr
@@ -861,7 +861,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifdef __cpp_lib_allocator_traits_is_always_equal
@@ -885,7 +885,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_assume_aligned
@@ -929,7 +929,7 @@
# endif
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifdef __cpp_lib_bind_front
@@ -961,7 +961,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifdef __cpp_lib_char8_t
@@ -999,15 +999,15 @@
# endif
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_complex
@@ -1047,7 +1047,7 @@
# endif
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_utility
@@ -1090,7 +1090,7 @@
# endif
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
# ifdef __cpp_lib_filesystem
@@ -1102,15 +1102,15 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifdef __cpp_lib_gcd_lcm
@@ -1175,7 +1175,7 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifdef __cpp_lib_is_aggregate
@@ -1217,7 +1217,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifdef __cpp_lib_is_swappable
@@ -1275,7 +1275,7 @@
# endif
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
# ifdef __cpp_lib_memory_resource
@@ -1287,7 +1287,7 @@
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifdef __cpp_lib_node_extract
@@ -1314,7 +1314,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# ifdef __cpp_lib_parallel_algorithm
@@ -1337,39 +1337,39 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifdef __cpp_lib_raw_memory_algorithms
@@ -1377,7 +1377,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifdef __cpp_lib_remove_cvref
@@ -1452,7 +1452,7 @@
# endif
# ifdef __cpp_lib_spanstream
-# error "__cpp_lib_spanstream should not be defined before c++2b"
+# error "__cpp_lib_spanstream should not be defined before c++23"
# endif
# ifdef __cpp_lib_ssize
@@ -1460,7 +1460,7 @@
# endif
# ifdef __cpp_lib_stacktrace
-# error "__cpp_lib_stacktrace should not be defined before c++2b"
+# error "__cpp_lib_stacktrace should not be defined before c++23"
# endif
# ifdef __cpp_lib_starts_ends_with
@@ -1468,15 +1468,15 @@
# endif
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_udls
@@ -1511,7 +1511,7 @@
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifndef __cpp_lib_transformation_trait_aliases
@@ -1559,7 +1559,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
# ifdef __cpp_lib_unwrap_ref
@@ -1577,7 +1577,7 @@
#elif TEST_STD_VER == 17
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifndef __cpp_lib_addressof_constexpr
@@ -1588,7 +1588,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifndef __cpp_lib_allocator_traits_is_always_equal
@@ -1627,7 +1627,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifdef __cpp_lib_assume_aligned
@@ -1674,7 +1674,7 @@
# endif
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifdef __cpp_lib_bind_front
@@ -1715,7 +1715,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# ifdef __cpp_lib_char8_t
@@ -1759,15 +1759,15 @@
# endif
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_complex
@@ -1807,7 +1807,7 @@
# endif
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_utility
@@ -1862,7 +1862,7 @@
# endif
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
# if !defined(_LIBCPP_AVAILABILITY_HAS_NO_FILESYSTEM)
@@ -1883,15 +1883,15 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifndef __cpp_lib_gcd_lcm
@@ -1980,7 +1980,7 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifndef __cpp_lib_is_aggregate
@@ -2028,7 +2028,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifndef __cpp_lib_is_swappable
@@ -2110,7 +2110,7 @@
# endif
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
# ifndef __cpp_lib_memory_resource
@@ -2125,7 +2125,7 @@
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifndef __cpp_lib_node_extract
@@ -2164,7 +2164,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# if !defined(_LIBCPP_VERSION)
@@ -2196,39 +2196,39 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifndef __cpp_lib_raw_memory_algorithms
@@ -2239,7 +2239,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifdef __cpp_lib_remove_cvref
@@ -2335,7 +2335,7 @@
# endif
# ifdef __cpp_lib_spanstream
-# error "__cpp_lib_spanstream should not be defined before c++2b"
+# error "__cpp_lib_spanstream should not be defined before c++23"
# endif
# ifdef __cpp_lib_ssize
@@ -2343,7 +2343,7 @@
# endif
# ifdef __cpp_lib_stacktrace
-# error "__cpp_lib_stacktrace should not be defined before c++2b"
+# error "__cpp_lib_stacktrace should not be defined before c++23"
# endif
# ifdef __cpp_lib_starts_ends_with
@@ -2351,15 +2351,15 @@
# endif
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_udls
@@ -2406,7 +2406,7 @@
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifndef __cpp_lib_transformation_trait_aliases
@@ -2463,7 +2463,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
# ifdef __cpp_lib_unwrap_ref
@@ -2487,7 +2487,7 @@
#elif TEST_STD_VER == 20
# ifdef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should not be defined before c++23"
# endif
# ifndef __cpp_lib_addressof_constexpr
@@ -2498,7 +2498,7 @@
# endif
# ifdef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should not be defined before c++2b"
+# error "__cpp_lib_allocate_at_least should not be defined before c++23"
# endif
# ifndef __cpp_lib_allocator_traits_is_always_equal
@@ -2537,7 +2537,7 @@
# endif
# ifdef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should not be defined before c++23"
# endif
# ifndef __cpp_lib_assume_aligned
@@ -2641,7 +2641,7 @@
# endif
# ifdef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should not be defined before c++2b"
+# error "__cpp_lib_bind_back should not be defined before c++23"
# endif
# ifndef __cpp_lib_bind_front
@@ -2700,7 +2700,7 @@
# endif
# ifdef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should not be defined before c++2b"
+# error "__cpp_lib_byteswap should not be defined before c++23"
# endif
# if defined(__cpp_char8_t)
@@ -2759,15 +2759,15 @@
# endif
# ifdef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should not be defined before c++2b"
+# error "__cpp_lib_constexpr_bitset should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should not be defined before c++2b"
+# error "__cpp_lib_constexpr_charconv should not be defined before c++23"
# endif
# ifdef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should not be defined before c++2b"
+# error "__cpp_lib_constexpr_cmath should not be defined before c++23"
# endif
# ifndef __cpp_lib_constexpr_complex
@@ -2834,7 +2834,7 @@
# endif
# ifdef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should not be defined before c++2b"
+# error "__cpp_lib_constexpr_typeinfo should not be defined before c++23"
# endif
# ifndef __cpp_lib_constexpr_utility
@@ -2913,7 +2913,7 @@
# endif
# ifdef __cpp_lib_expected
-# error "__cpp_lib_expected should not be defined before c++2b"
+# error "__cpp_lib_expected should not be defined before c++23"
# endif
# if !defined(_LIBCPP_AVAILABILITY_HAS_NO_FILESYSTEM)
@@ -2943,15 +2943,15 @@
# endif
# ifdef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should not be defined before c++2b"
+# error "__cpp_lib_format_ranges should not be defined before c++23"
# endif
# ifdef __cpp_lib_formatters
-# error "__cpp_lib_formatters should not be defined before c++2b"
+# error "__cpp_lib_formatters should not be defined before c++23"
# endif
# ifdef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should not be defined before c++2b"
+# error "__cpp_lib_forward_like should not be defined before c++23"
# endif
# ifndef __cpp_lib_gcd_lcm
@@ -3052,7 +3052,7 @@
# endif
# ifdef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should not be defined before c++2b"
+# error "__cpp_lib_invoke_r should not be defined before c++23"
# endif
# ifndef __cpp_lib_is_aggregate
@@ -3124,7 +3124,7 @@
# endif
# ifdef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should not be defined before c++2b"
+# error "__cpp_lib_is_scoped_enum should not be defined before c++23"
# endif
# ifndef __cpp_lib_is_swappable
@@ -3230,7 +3230,7 @@
# endif
# ifdef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should not be defined before c++2b"
+# error "__cpp_lib_mdspan should not be defined before c++23"
# endif
# ifndef __cpp_lib_memory_resource
@@ -3248,7 +3248,7 @@
# endif
# ifdef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should not be defined before c++2b"
+# error "__cpp_lib_move_only_function should not be defined before c++23"
# endif
# ifndef __cpp_lib_node_extract
@@ -3287,7 +3287,7 @@
# endif
# ifdef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should not be defined before c++2b"
+# error "__cpp_lib_out_ptr should not be defined before c++23"
# endif
# if !defined(_LIBCPP_VERSION)
@@ -3325,39 +3325,39 @@
# endif
# ifdef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should not be defined before c++2b"
+# error "__cpp_lib_ranges_as_rvalue should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should not be defined before c++2b"
+# error "__cpp_lib_ranges_chunk_by should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should not be defined before c++2b"
+# error "__cpp_lib_ranges_iota should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_join_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should not be defined before c++2b"
+# error "__cpp_lib_ranges_slide should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should not be defined before c++2b"
+# error "__cpp_lib_ranges_to_container should not be defined before c++23"
# endif
# ifdef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should not be defined before c++2b"
+# error "__cpp_lib_ranges_zip should not be defined before c++23"
# endif
# ifndef __cpp_lib_raw_memory_algorithms
@@ -3368,7 +3368,7 @@
# endif
# ifdef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should not be defined before c++2b"
+# error "__cpp_lib_reference_from_temporary should not be defined before c++23"
# endif
# ifndef __cpp_lib_remove_cvref
@@ -3500,7 +3500,7 @@
# endif
# ifdef __cpp_lib_spanstream
-# error "__cpp_lib_spanstream should not be defined before c++2b"
+# error "__cpp_lib_spanstream should not be defined before c++23"
# endif
# ifndef __cpp_lib_ssize
@@ -3511,7 +3511,7 @@
# endif
# ifdef __cpp_lib_stacktrace
-# error "__cpp_lib_stacktrace should not be defined before c++2b"
+# error "__cpp_lib_stacktrace should not be defined before c++23"
# endif
# ifndef __cpp_lib_starts_ends_with
@@ -3522,15 +3522,15 @@
# endif
# ifdef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should not be defined before c++2b"
+# error "__cpp_lib_stdatomic_h should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should not be defined before c++2b"
+# error "__cpp_lib_string_contains should not be defined before c++23"
# endif
# ifdef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should not be defined before c++23"
# endif
# ifndef __cpp_lib_string_udls
@@ -3601,7 +3601,7 @@
# endif
# ifdef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should not be defined before c++2b"
+# error "__cpp_lib_to_underlying should not be defined before c++23"
# endif
# ifndef __cpp_lib_transformation_trait_aliases
@@ -3661,7 +3661,7 @@
# endif
# ifdef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should not be defined before c++2b"
+# error "__cpp_lib_unreachable should not be defined before c++23"
# endif
# ifndef __cpp_lib_unwrap_ref
@@ -3688,67 +3688,67 @@
#elif TEST_STD_VER > 20
# ifndef __cpp_lib_adaptor_iterator_pair_constructor
-# error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should be defined in c++23"
# endif
# if __cpp_lib_adaptor_iterator_pair_constructor != 202106L
-# error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++2b"
+# error "__cpp_lib_adaptor_iterator_pair_constructor should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_addressof_constexpr
-# error "__cpp_lib_addressof_constexpr should be defined in c++2b"
+# error "__cpp_lib_addressof_constexpr should be defined in c++23"
# endif
# if __cpp_lib_addressof_constexpr != 201603L
-# error "__cpp_lib_addressof_constexpr should have the value 201603L in c++2b"
+# error "__cpp_lib_addressof_constexpr should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_allocate_at_least
-# error "__cpp_lib_allocate_at_least should be defined in c++2b"
+# error "__cpp_lib_allocate_at_least should be defined in c++23"
# endif
# if __cpp_lib_allocate_at_least != 202106L
-# error "__cpp_lib_allocate_at_least should have the value 202106L in c++2b"
+# error "__cpp_lib_allocate_at_least should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_allocator_traits_is_always_equal
-# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should be defined in c++23"
# endif
# if __cpp_lib_allocator_traits_is_always_equal != 201411L
-# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++2b"
+# error "__cpp_lib_allocator_traits_is_always_equal should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_any
-# error "__cpp_lib_any should be defined in c++2b"
+# error "__cpp_lib_any should be defined in c++23"
# endif
# if __cpp_lib_any != 201606L
-# error "__cpp_lib_any should have the value 201606L in c++2b"
+# error "__cpp_lib_any should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_apply
-# error "__cpp_lib_apply should be defined in c++2b"
+# error "__cpp_lib_apply should be defined in c++23"
# endif
# if __cpp_lib_apply != 201603L
-# error "__cpp_lib_apply should have the value 201603L in c++2b"
+# error "__cpp_lib_apply should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_array_constexpr
-# error "__cpp_lib_array_constexpr should be defined in c++2b"
+# error "__cpp_lib_array_constexpr should be defined in c++23"
# endif
# if __cpp_lib_array_constexpr != 201811L
-# error "__cpp_lib_array_constexpr should have the value 201811L in c++2b"
+# error "__cpp_lib_array_constexpr should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_as_const
-# error "__cpp_lib_as_const should be defined in c++2b"
+# error "__cpp_lib_as_const should be defined in c++23"
# endif
# if __cpp_lib_as_const != 201510L
-# error "__cpp_lib_as_const should have the value 201510L in c++2b"
+# error "__cpp_lib_as_const should have the value 201510L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_associative_heterogeneous_erasure
-# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should be defined in c++23"
# endif
# if __cpp_lib_associative_heterogeneous_erasure != 202110L
-# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++2b"
+# error "__cpp_lib_associative_heterogeneous_erasure should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_associative_heterogeneous_erasure
@@ -3757,25 +3757,25 @@
# endif
# ifndef __cpp_lib_assume_aligned
-# error "__cpp_lib_assume_aligned should be defined in c++2b"
+# error "__cpp_lib_assume_aligned should be defined in c++23"
# endif
# if __cpp_lib_assume_aligned != 201811L
-# error "__cpp_lib_assume_aligned should have the value 201811L in c++2b"
+# error "__cpp_lib_assume_aligned should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_atomic_flag_test
-# error "__cpp_lib_atomic_flag_test should be defined in c++2b"
+# error "__cpp_lib_atomic_flag_test should be defined in c++23"
# endif
# if __cpp_lib_atomic_flag_test != 201907L
-# error "__cpp_lib_atomic_flag_test should have the value 201907L in c++2b"
+# error "__cpp_lib_atomic_flag_test should have the value 201907L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_atomic_float
-# error "__cpp_lib_atomic_float should be defined in c++2b"
+# error "__cpp_lib_atomic_float should be defined in c++23"
# endif
# if __cpp_lib_atomic_float != 201711L
-# error "__cpp_lib_atomic_float should have the value 201711L in c++2b"
+# error "__cpp_lib_atomic_float should have the value 201711L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_atomic_float
@@ -3784,25 +3784,25 @@
# endif
# ifndef __cpp_lib_atomic_is_always_lock_free
-# error "__cpp_lib_atomic_is_always_lock_free should be defined in c++2b"
+# error "__cpp_lib_atomic_is_always_lock_free should be defined in c++23"
# endif
# if __cpp_lib_atomic_is_always_lock_free != 201603L
-# error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++2b"
+# error "__cpp_lib_atomic_is_always_lock_free should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_atomic_lock_free_type_aliases
-# error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++2b"
+# error "__cpp_lib_atomic_lock_free_type_aliases should be defined in c++23"
# endif
# if __cpp_lib_atomic_lock_free_type_aliases != 201907L
-# error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++2b"
+# error "__cpp_lib_atomic_lock_free_type_aliases should have the value 201907L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_atomic_ref
-# error "__cpp_lib_atomic_ref should be defined in c++2b"
+# error "__cpp_lib_atomic_ref should be defined in c++23"
# endif
# if __cpp_lib_atomic_ref != 201806L
-# error "__cpp_lib_atomic_ref should have the value 201806L in c++2b"
+# error "__cpp_lib_atomic_ref should have the value 201806L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_atomic_ref
@@ -3812,10 +3812,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_atomic_shared_ptr
-# error "__cpp_lib_atomic_shared_ptr should be defined in c++2b"
+# error "__cpp_lib_atomic_shared_ptr should be defined in c++23"
# endif
# if __cpp_lib_atomic_shared_ptr != 201711L
-# error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++2b"
+# error "__cpp_lib_atomic_shared_ptr should have the value 201711L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_atomic_shared_ptr
@@ -3824,18 +3824,18 @@
# endif
# ifndef __cpp_lib_atomic_value_initialization
-# error "__cpp_lib_atomic_value_initialization should be defined in c++2b"
+# error "__cpp_lib_atomic_value_initialization should be defined in c++23"
# endif
# if __cpp_lib_atomic_value_initialization != 201911L
-# error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++2b"
+# error "__cpp_lib_atomic_value_initialization should have the value 201911L in c++23"
# endif
# if !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_atomic_wait
-# error "__cpp_lib_atomic_wait should be defined in c++2b"
+# error "__cpp_lib_atomic_wait should be defined in c++23"
# endif
# if __cpp_lib_atomic_wait != 201907L
-# error "__cpp_lib_atomic_wait should have the value 201907L in c++2b"
+# error "__cpp_lib_atomic_wait should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_atomic_wait
@@ -3845,10 +3845,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_barrier
-# error "__cpp_lib_barrier should be defined in c++2b"
+# error "__cpp_lib_barrier should be defined in c++23"
# endif
# if __cpp_lib_barrier != 201907L
-# error "__cpp_lib_barrier should have the value 201907L in c++2b"
+# error "__cpp_lib_barrier should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_barrier
@@ -3858,10 +3858,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_bind_back
-# error "__cpp_lib_bind_back should be defined in c++2b"
+# error "__cpp_lib_bind_back should be defined in c++23"
# endif
# if __cpp_lib_bind_back != 202202L
-# error "__cpp_lib_bind_back should have the value 202202L in c++2b"
+# error "__cpp_lib_bind_back should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_bind_back
@@ -3870,25 +3870,25 @@
# endif
# ifndef __cpp_lib_bind_front
-# error "__cpp_lib_bind_front should be defined in c++2b"
+# error "__cpp_lib_bind_front should be defined in c++23"
# endif
# if __cpp_lib_bind_front != 201907L
-# error "__cpp_lib_bind_front should have the value 201907L in c++2b"
+# error "__cpp_lib_bind_front should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_bit_cast
-# error "__cpp_lib_bit_cast should be defined in c++2b"
+# error "__cpp_lib_bit_cast should be defined in c++23"
# endif
# if __cpp_lib_bit_cast != 201806L
-# error "__cpp_lib_bit_cast should have the value 201806L in c++2b"
+# error "__cpp_lib_bit_cast should have the value 201806L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_bitops
-# error "__cpp_lib_bitops should be defined in c++2b"
+# error "__cpp_lib_bitops should be defined in c++23"
# endif
# if __cpp_lib_bitops != 201907L
-# error "__cpp_lib_bitops should have the value 201907L in c++2b"
+# error "__cpp_lib_bitops should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_bitops
@@ -3897,46 +3897,46 @@
# endif
# ifndef __cpp_lib_bool_constant
-# error "__cpp_lib_bool_constant should be defined in c++2b"
+# error "__cpp_lib_bool_constant should be defined in c++23"
# endif
# if __cpp_lib_bool_constant != 201505L
-# error "__cpp_lib_bool_constant should have the value 201505L in c++2b"
+# error "__cpp_lib_bool_constant should have the value 201505L in c++23"
# endif
# ifndef __cpp_lib_bounded_array_traits
-# error "__cpp_lib_bounded_array_traits should be defined in c++2b"
+# error "__cpp_lib_bounded_array_traits should be defined in c++23"
# endif
# if __cpp_lib_bounded_array_traits != 201902L
-# error "__cpp_lib_bounded_array_traits should have the value 201902L in c++2b"
+# error "__cpp_lib_bounded_array_traits should have the value 201902L in c++23"
# endif
# ifndef __cpp_lib_boyer_moore_searcher
-# error "__cpp_lib_boyer_moore_searcher should be defined in c++2b"
+# error "__cpp_lib_boyer_moore_searcher should be defined in c++23"
# endif
# if __cpp_lib_boyer_moore_searcher != 201603L
-# error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++2b"
+# error "__cpp_lib_boyer_moore_searcher should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_byte
-# error "__cpp_lib_byte should be defined in c++2b"
+# error "__cpp_lib_byte should be defined in c++23"
# endif
# if __cpp_lib_byte != 201603L
-# error "__cpp_lib_byte should have the value 201603L in c++2b"
+# error "__cpp_lib_byte should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_byteswap
-# error "__cpp_lib_byteswap should be defined in c++2b"
+# error "__cpp_lib_byteswap should be defined in c++23"
# endif
# if __cpp_lib_byteswap != 202110L
-# error "__cpp_lib_byteswap should have the value 202110L in c++2b"
+# error "__cpp_lib_byteswap should have the value 202110L in c++23"
# endif
# if defined(__cpp_char8_t)
# ifndef __cpp_lib_char8_t
-# error "__cpp_lib_char8_t should be defined in c++2b"
+# error "__cpp_lib_char8_t should be defined in c++23"
# endif
# if __cpp_lib_char8_t != 201907L
-# error "__cpp_lib_char8_t should have the value 201907L in c++2b"
+# error "__cpp_lib_char8_t should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_char8_t
@@ -3945,67 +3945,67 @@
# endif
# ifndef __cpp_lib_chrono
-# error "__cpp_lib_chrono should be defined in c++2b"
+# error "__cpp_lib_chrono should be defined in c++23"
# endif
# if __cpp_lib_chrono != 201611L
-# error "__cpp_lib_chrono should have the value 201611L in c++2b"
+# error "__cpp_lib_chrono should have the value 201611L in c++23"
# endif
# ifndef __cpp_lib_chrono_udls
-# error "__cpp_lib_chrono_udls should be defined in c++2b"
+# error "__cpp_lib_chrono_udls should be defined in c++23"
# endif
# if __cpp_lib_chrono_udls != 201304L
-# error "__cpp_lib_chrono_udls should have the value 201304L in c++2b"
+# error "__cpp_lib_chrono_udls should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_clamp
-# error "__cpp_lib_clamp should be defined in c++2b"
+# error "__cpp_lib_clamp should be defined in c++23"
# endif
# if __cpp_lib_clamp != 201603L
-# error "__cpp_lib_clamp should have the value 201603L in c++2b"
+# error "__cpp_lib_clamp should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_complex_udls
-# error "__cpp_lib_complex_udls should be defined in c++2b"
+# error "__cpp_lib_complex_udls should be defined in c++23"
# endif
# if __cpp_lib_complex_udls != 201309L
-# error "__cpp_lib_complex_udls should have the value 201309L in c++2b"
+# error "__cpp_lib_complex_udls should have the value 201309L in c++23"
# endif
# ifndef __cpp_lib_concepts
-# error "__cpp_lib_concepts should be defined in c++2b"
+# error "__cpp_lib_concepts should be defined in c++23"
# endif
# if __cpp_lib_concepts != 202002L
-# error "__cpp_lib_concepts should have the value 202002L in c++2b"
+# error "__cpp_lib_concepts should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_constexpr_algorithms
-# error "__cpp_lib_constexpr_algorithms should be defined in c++2b"
+# error "__cpp_lib_constexpr_algorithms should be defined in c++23"
# endif
# if __cpp_lib_constexpr_algorithms != 201806L
-# error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++2b"
+# error "__cpp_lib_constexpr_algorithms should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_constexpr_bitset
-# error "__cpp_lib_constexpr_bitset should be defined in c++2b"
+# error "__cpp_lib_constexpr_bitset should be defined in c++23"
# endif
# if __cpp_lib_constexpr_bitset != 202207L
-# error "__cpp_lib_constexpr_bitset should have the value 202207L in c++2b"
+# error "__cpp_lib_constexpr_bitset should have the value 202207L in c++23"
# endif
# ifndef __cpp_lib_constexpr_charconv
-# error "__cpp_lib_constexpr_charconv should be defined in c++2b"
+# error "__cpp_lib_constexpr_charconv should be defined in c++23"
# endif
# if __cpp_lib_constexpr_charconv != 202207L
-# error "__cpp_lib_constexpr_charconv should have the value 202207L in c++2b"
+# error "__cpp_lib_constexpr_charconv should have the value 202207L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_constexpr_cmath
-# error "__cpp_lib_constexpr_cmath should be defined in c++2b"
+# error "__cpp_lib_constexpr_cmath should be defined in c++23"
# endif
# if __cpp_lib_constexpr_cmath != 202202L
-# error "__cpp_lib_constexpr_cmath should have the value 202202L in c++2b"
+# error "__cpp_lib_constexpr_cmath should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_constexpr_cmath
@@ -4014,102 +4014,102 @@
# endif
# ifndef __cpp_lib_constexpr_complex
-# error "__cpp_lib_constexpr_complex should be defined in c++2b"
+# error "__cpp_lib_constexpr_complex should be defined in c++23"
# endif
# if __cpp_lib_constexpr_complex != 201711L
-# error "__cpp_lib_constexpr_complex should have the value 201711L in c++2b"
+# error "__cpp_lib_constexpr_complex should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_constexpr_dynamic_alloc
-# error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++2b"
+# error "__cpp_lib_constexpr_dynamic_alloc should be defined in c++23"
# endif
# if __cpp_lib_constexpr_dynamic_alloc != 201907L
-# error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_dynamic_alloc should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_constexpr_functional
-# error "__cpp_lib_constexpr_functional should be defined in c++2b"
+# error "__cpp_lib_constexpr_functional should be defined in c++23"
# endif
# if __cpp_lib_constexpr_functional != 201907L
-# error "__cpp_lib_constexpr_functional should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_functional should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_constexpr_iterator
-# error "__cpp_lib_constexpr_iterator should be defined in c++2b"
+# error "__cpp_lib_constexpr_iterator should be defined in c++23"
# endif
# if __cpp_lib_constexpr_iterator != 201811L
-# error "__cpp_lib_constexpr_iterator should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_iterator should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_constexpr_memory
-# error "__cpp_lib_constexpr_memory should be defined in c++2b"
+# error "__cpp_lib_constexpr_memory should be defined in c++23"
# endif
# if __cpp_lib_constexpr_memory != 202202L
-# error "__cpp_lib_constexpr_memory should have the value 202202L in c++2b"
+# error "__cpp_lib_constexpr_memory should have the value 202202L in c++23"
# endif
# ifndef __cpp_lib_constexpr_numeric
-# error "__cpp_lib_constexpr_numeric should be defined in c++2b"
+# error "__cpp_lib_constexpr_numeric should be defined in c++23"
# endif
# if __cpp_lib_constexpr_numeric != 201911L
-# error "__cpp_lib_constexpr_numeric should have the value 201911L in c++2b"
+# error "__cpp_lib_constexpr_numeric should have the value 201911L in c++23"
# endif
# ifndef __cpp_lib_constexpr_string
-# error "__cpp_lib_constexpr_string should be defined in c++2b"
+# error "__cpp_lib_constexpr_string should be defined in c++23"
# endif
# if __cpp_lib_constexpr_string != 201907L
-# error "__cpp_lib_constexpr_string should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_string should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_constexpr_string_view
-# error "__cpp_lib_constexpr_string_view should be defined in c++2b"
+# error "__cpp_lib_constexpr_string_view should be defined in c++23"
# endif
# if __cpp_lib_constexpr_string_view != 201811L
-# error "__cpp_lib_constexpr_string_view should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_string_view should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_constexpr_tuple
-# error "__cpp_lib_constexpr_tuple should be defined in c++2b"
+# error "__cpp_lib_constexpr_tuple should be defined in c++23"
# endif
# if __cpp_lib_constexpr_tuple != 201811L
-# error "__cpp_lib_constexpr_tuple should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_tuple should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_constexpr_typeinfo
-# error "__cpp_lib_constexpr_typeinfo should be defined in c++2b"
+# error "__cpp_lib_constexpr_typeinfo should be defined in c++23"
# endif
# if __cpp_lib_constexpr_typeinfo != 202106L
-# error "__cpp_lib_constexpr_typeinfo should have the value 202106L in c++2b"
+# error "__cpp_lib_constexpr_typeinfo should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_constexpr_utility
-# error "__cpp_lib_constexpr_utility should be defined in c++2b"
+# error "__cpp_lib_constexpr_utility should be defined in c++23"
# endif
# if __cpp_lib_constexpr_utility != 201811L
-# error "__cpp_lib_constexpr_utility should have the value 201811L in c++2b"
+# error "__cpp_lib_constexpr_utility should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_constexpr_vector
-# error "__cpp_lib_constexpr_vector should be defined in c++2b"
+# error "__cpp_lib_constexpr_vector should be defined in c++23"
# endif
# if __cpp_lib_constexpr_vector != 201907L
-# error "__cpp_lib_constexpr_vector should have the value 201907L in c++2b"
+# error "__cpp_lib_constexpr_vector should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_coroutine
-# error "__cpp_lib_coroutine should be defined in c++2b"
+# error "__cpp_lib_coroutine should be defined in c++23"
# endif
# if __cpp_lib_coroutine != 201902L
-# error "__cpp_lib_coroutine should have the value 201902L in c++2b"
+# error "__cpp_lib_coroutine should have the value 201902L in c++23"
# endif
# if TEST_STD_VER > 17 && defined(__cpp_impl_destroying_delete) && __cpp_impl_destroying_delete >= 201806L
# ifndef __cpp_lib_destroying_delete
-# error "__cpp_lib_destroying_delete should be defined in c++2b"
+# error "__cpp_lib_destroying_delete should be defined in c++23"
# endif
# if __cpp_lib_destroying_delete != 201806L
-# error "__cpp_lib_destroying_delete should have the value 201806L in c++2b"
+# error "__cpp_lib_destroying_delete should have the value 201806L in c++23"
# endif
# else
# ifdef __cpp_lib_destroying_delete
@@ -4118,39 +4118,39 @@
# endif
# ifndef __cpp_lib_enable_shared_from_this
-# error "__cpp_lib_enable_shared_from_this should be defined in c++2b"
+# error "__cpp_lib_enable_shared_from_this should be defined in c++23"
# endif
# if __cpp_lib_enable_shared_from_this != 201603L
-# error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++2b"
+# error "__cpp_lib_enable_shared_from_this should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_endian
-# error "__cpp_lib_endian should be defined in c++2b"
+# error "__cpp_lib_endian should be defined in c++23"
# endif
# if __cpp_lib_endian != 201907L
-# error "__cpp_lib_endian should have the value 201907L in c++2b"
+# error "__cpp_lib_endian should have the value 201907L in c++23"
# endif
# ifndef __cpp_lib_erase_if
-# error "__cpp_lib_erase_if should be defined in c++2b"
+# error "__cpp_lib_erase_if should be defined in c++23"
# endif
# if __cpp_lib_erase_if != 202002L
-# error "__cpp_lib_erase_if should have the value 202002L in c++2b"
+# error "__cpp_lib_erase_if should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_exchange_function
-# error "__cpp_lib_exchange_function should be defined in c++2b"
+# error "__cpp_lib_exchange_function should be defined in c++23"
# endif
# if __cpp_lib_exchange_function != 201304L
-# error "__cpp_lib_exchange_function should have the value 201304L in c++2b"
+# error "__cpp_lib_exchange_function should have the value 201304L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_execution
-# error "__cpp_lib_execution should be defined in c++2b"
+# error "__cpp_lib_execution should be defined in c++23"
# endif
# if __cpp_lib_execution != 201902L
-# error "__cpp_lib_execution should have the value 201902L in c++2b"
+# error "__cpp_lib_execution should have the value 201902L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_execution
@@ -4159,18 +4159,18 @@
# endif
# ifndef __cpp_lib_expected
-# error "__cpp_lib_expected should be defined in c++2b"
+# error "__cpp_lib_expected should be defined in c++23"
# endif
# if __cpp_lib_expected != 202211L
-# error "__cpp_lib_expected should have the value 202211L in c++2b"
+# error "__cpp_lib_expected should have the value 202211L in c++23"
# endif
# if !defined(_LIBCPP_AVAILABILITY_HAS_NO_FILESYSTEM)
# ifndef __cpp_lib_filesystem
-# error "__cpp_lib_filesystem should be defined in c++2b"
+# error "__cpp_lib_filesystem should be defined in c++23"
# endif
# if __cpp_lib_filesystem != 201703L
-# error "__cpp_lib_filesystem should have the value 201703L in c++2b"
+# error "__cpp_lib_filesystem should have the value 201703L in c++23"
# endif
# else
# ifdef __cpp_lib_filesystem
@@ -4180,10 +4180,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_format
-# error "__cpp_lib_format should be defined in c++2b"
+# error "__cpp_lib_format should be defined in c++23"
# endif
# if __cpp_lib_format != 202106L
-# error "__cpp_lib_format should have the value 202106L in c++2b"
+# error "__cpp_lib_format should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_format
@@ -4193,10 +4193,10 @@
# if !defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)
# ifndef __cpp_lib_format_ranges
-# error "__cpp_lib_format_ranges should be defined in c++2b"
+# error "__cpp_lib_format_ranges should be defined in c++23"
# endif
# if __cpp_lib_format_ranges != 202207L
-# error "__cpp_lib_format_ranges should have the value 202207L in c++2b"
+# error "__cpp_lib_format_ranges should have the value 202207L in c++23"
# endif
# else
# ifdef __cpp_lib_format_ranges
@@ -4206,10 +4206,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_formatters
-# error "__cpp_lib_formatters should be defined in c++2b"
+# error "__cpp_lib_formatters should be defined in c++23"
# endif
# if __cpp_lib_formatters != 202302L
-# error "__cpp_lib_formatters should have the value 202302L in c++2b"
+# error "__cpp_lib_formatters should have the value 202302L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_formatters
@@ -4218,39 +4218,39 @@
# endif
# ifndef __cpp_lib_forward_like
-# error "__cpp_lib_forward_like should be defined in c++2b"
+# error "__cpp_lib_forward_like should be defined in c++23"
# endif
# if __cpp_lib_forward_like != 202207L
-# error "__cpp_lib_forward_like should have the value 202207L in c++2b"
+# error "__cpp_lib_forward_like should have the value 202207L in c++23"
# endif
# ifndef __cpp_lib_gcd_lcm
-# error "__cpp_lib_gcd_lcm should be defined in c++2b"
+# error "__cpp_lib_gcd_lcm should be defined in c++23"
# endif
# if __cpp_lib_gcd_lcm != 201606L
-# error "__cpp_lib_gcd_lcm should have the value 201606L in c++2b"
+# error "__cpp_lib_gcd_lcm should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_generic_associative_lookup
-# error "__cpp_lib_generic_associative_lookup should be defined in c++2b"
+# error "__cpp_lib_generic_associative_lookup should be defined in c++23"
# endif
# if __cpp_lib_generic_associative_lookup != 201304L
-# error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++2b"
+# error "__cpp_lib_generic_associative_lookup should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_generic_unordered_lookup
-# error "__cpp_lib_generic_unordered_lookup should be defined in c++2b"
+# error "__cpp_lib_generic_unordered_lookup should be defined in c++23"
# endif
# if __cpp_lib_generic_unordered_lookup != 201811L
-# error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++2b"
+# error "__cpp_lib_generic_unordered_lookup should have the value 201811L in c++23"
# endif
# if defined(__GCC_DESTRUCTIVE_SIZE) && defined(__GCC_CONSTRUCTIVE_SIZE)
# ifndef __cpp_lib_hardware_interference_size
-# error "__cpp_lib_hardware_interference_size should be defined in c++2b"
+# error "__cpp_lib_hardware_interference_size should be defined in c++23"
# endif
# if __cpp_lib_hardware_interference_size != 201703L
-# error "__cpp_lib_hardware_interference_size should have the value 201703L in c++2b"
+# error "__cpp_lib_hardware_interference_size should have the value 201703L in c++23"
# endif
# else
# ifdef __cpp_lib_hardware_interference_size
@@ -4259,109 +4259,109 @@
# endif
# ifndef __cpp_lib_has_unique_object_representations
-# error "__cpp_lib_has_unique_object_representations should be defined in c++2b"
+# error "__cpp_lib_has_unique_object_representations should be defined in c++23"
# endif
# if __cpp_lib_has_unique_object_representations != 201606L
-# error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++2b"
+# error "__cpp_lib_has_unique_object_representations should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_hypot
-# error "__cpp_lib_hypot should be defined in c++2b"
+# error "__cpp_lib_hypot should be defined in c++23"
# endif
# if __cpp_lib_hypot != 201603L
-# error "__cpp_lib_hypot should have the value 201603L in c++2b"
+# error "__cpp_lib_hypot should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_incomplete_container_elements
-# error "__cpp_lib_incomplete_container_elements should be defined in c++2b"
+# error "__cpp_lib_incomplete_container_elements should be defined in c++23"
# endif
# if __cpp_lib_incomplete_container_elements != 201505L
-# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++2b"
+# error "__cpp_lib_incomplete_container_elements should have the value 201505L in c++23"
# endif
# ifndef __cpp_lib_int_pow2
-# error "__cpp_lib_int_pow2 should be defined in c++2b"
+# error "__cpp_lib_int_pow2 should be defined in c++23"
# endif
# if __cpp_lib_int_pow2 != 202002L
-# error "__cpp_lib_int_pow2 should have the value 202002L in c++2b"
+# error "__cpp_lib_int_pow2 should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_integer_comparison_functions
-# error "__cpp_lib_integer_comparison_functions should be defined in c++2b"
+# error "__cpp_lib_integer_comparison_functions should be defined in c++23"
# endif
# if __cpp_lib_integer_comparison_functions != 202002L
-# error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++2b"
+# error "__cpp_lib_integer_comparison_functions should have the value 202002L in c++23"
# endif
# ifndef __cpp_lib_integer_sequence
-# error "__cpp_lib_integer_sequence should be defined in c++2b"
+# error "__cpp_lib_integer_sequence should be defined in c++23"
# endif
# if __cpp_lib_integer_sequence != 201304L
-# error "__cpp_lib_integer_sequence should have the value 201304L in c++2b"
+# error "__cpp_lib_integer_sequence should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_integral_constant_callable
-# error "__cpp_lib_integral_constant_callable should be defined in c++2b"
+# error "__cpp_lib_integral_constant_callable should be defined in c++23"
# endif
# if __cpp_lib_integral_constant_callable != 201304L
-# error "__cpp_lib_integral_constant_callable should have the value 201304L in c++2b"
+# error "__cpp_lib_integral_constant_callable should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_interpolate
-# error "__cpp_lib_interpolate should be defined in c++2b"
+# error "__cpp_lib_interpolate should be defined in c++23"
# endif
# if __cpp_lib_interpolate != 201902L
-# error "__cpp_lib_interpolate should have the value 201902L in c++2b"
+# error "__cpp_lib_interpolate should have the value 201902L in c++23"
# endif
# ifndef __cpp_lib_invoke
-# error "__cpp_lib_invoke should be defined in c++2b"
+# error "__cpp_lib_invoke should be defined in c++23"
# endif
# if __cpp_lib_invoke != 201411L
-# error "__cpp_lib_invoke should have the value 201411L in c++2b"
+# error "__cpp_lib_invoke should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_invoke_r
-# error "__cpp_lib_invoke_r should be defined in c++2b"
+# error "__cpp_lib_invoke_r should be defined in c++23"
# endif
# if __cpp_lib_invoke_r != 202106L
-# error "__cpp_lib_invoke_r should have the value 202106L in c++2b"
+# error "__cpp_lib_invoke_r should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_is_aggregate
-# error "__cpp_lib_is_aggregate should be defined in c++2b"
+# error "__cpp_lib_is_aggregate should be defined in c++23"
# endif
# if __cpp_lib_is_aggregate != 201703L
-# error "__cpp_lib_is_aggregate should have the value 201703L in c++2b"
+# error "__cpp_lib_is_aggregate should have the value 201703L in c++23"
# endif
# ifndef __cpp_lib_is_constant_evaluated
-# error "__cpp_lib_is_constant_evaluated should be defined in c++2b"
+# error "__cpp_lib_is_constant_evaluated should be defined in c++23"
# endif
# if __cpp_lib_is_constant_evaluated != 201811L
-# error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++2b"
+# error "__cpp_lib_is_constant_evaluated should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_is_final
-# error "__cpp_lib_is_final should be defined in c++2b"
+# error "__cpp_lib_is_final should be defined in c++23"
# endif
# if __cpp_lib_is_final != 201402L
-# error "__cpp_lib_is_final should have the value 201402L in c++2b"
+# error "__cpp_lib_is_final should have the value 201402L in c++23"
# endif
# ifndef __cpp_lib_is_invocable
-# error "__cpp_lib_is_invocable should be defined in c++2b"
+# error "__cpp_lib_is_invocable should be defined in c++23"
# endif
# if __cpp_lib_is_invocable != 201703L
-# error "__cpp_lib_is_invocable should have the value 201703L in c++2b"
+# error "__cpp_lib_is_invocable should have the value 201703L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_is_layout_compatible
-# error "__cpp_lib_is_layout_compatible should be defined in c++2b"
+# error "__cpp_lib_is_layout_compatible should be defined in c++23"
# endif
# if __cpp_lib_is_layout_compatible != 201907L
-# error "__cpp_lib_is_layout_compatible should have the value 201907L in c++2b"
+# error "__cpp_lib_is_layout_compatible should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_is_layout_compatible
@@ -4370,25 +4370,25 @@
# endif
# ifndef __cpp_lib_is_nothrow_convertible
-# error "__cpp_lib_is_nothrow_convertible should be defined in c++2b"
+# error "__cpp_lib_is_nothrow_convertible should be defined in c++23"
# endif
# if __cpp_lib_is_nothrow_convertible != 201806L
-# error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++2b"
+# error "__cpp_lib_is_nothrow_convertible should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_is_null_pointer
-# error "__cpp_lib_is_null_pointer should be defined in c++2b"
+# error "__cpp_lib_is_null_pointer should be defined in c++23"
# endif
# if __cpp_lib_is_null_pointer != 201309L
-# error "__cpp_lib_is_null_pointer should have the value 201309L in c++2b"
+# error "__cpp_lib_is_null_pointer should have the value 201309L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_is_pointer_interconvertible
-# error "__cpp_lib_is_pointer_interconvertible should be defined in c++2b"
+# error "__cpp_lib_is_pointer_interconvertible should be defined in c++23"
# endif
# if __cpp_lib_is_pointer_interconvertible != 201907L
-# error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++2b"
+# error "__cpp_lib_is_pointer_interconvertible should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_is_pointer_interconvertible
@@ -4397,25 +4397,25 @@
# endif
# ifndef __cpp_lib_is_scoped_enum
-# error "__cpp_lib_is_scoped_enum should be defined in c++2b"
+# error "__cpp_lib_is_scoped_enum should be defined in c++23"
# endif
# if __cpp_lib_is_scoped_enum != 202011L
-# error "__cpp_lib_is_scoped_enum should have the value 202011L in c++2b"
+# error "__cpp_lib_is_scoped_enum should have the value 202011L in c++23"
# endif
# ifndef __cpp_lib_is_swappable
-# error "__cpp_lib_is_swappable should be defined in c++2b"
+# error "__cpp_lib_is_swappable should be defined in c++23"
# endif
# if __cpp_lib_is_swappable != 201603L
-# error "__cpp_lib_is_swappable should have the value 201603L in c++2b"
+# error "__cpp_lib_is_swappable should have the value 201603L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_jthread
-# error "__cpp_lib_jthread should be defined in c++2b"
+# error "__cpp_lib_jthread should be defined in c++23"
# endif
# if __cpp_lib_jthread != 201911L
-# error "__cpp_lib_jthread should have the value 201911L in c++2b"
+# error "__cpp_lib_jthread should have the value 201911L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_jthread
@@ -4425,10 +4425,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_latch
-# error "__cpp_lib_latch should be defined in c++2b"
+# error "__cpp_lib_latch should be defined in c++23"
# endif
# if __cpp_lib_latch != 201907L
-# error "__cpp_lib_latch should have the value 201907L in c++2b"
+# error "__cpp_lib_latch should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_latch
@@ -4437,67 +4437,67 @@
# endif
# ifndef __cpp_lib_launder
-# error "__cpp_lib_launder should be defined in c++2b"
+# error "__cpp_lib_launder should be defined in c++23"
# endif
# if __cpp_lib_launder != 201606L
-# error "__cpp_lib_launder should have the value 201606L in c++2b"
+# error "__cpp_lib_launder should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_list_remove_return_type
-# error "__cpp_lib_list_remove_return_type should be defined in c++2b"
+# error "__cpp_lib_list_remove_return_type should be defined in c++23"
# endif
# if __cpp_lib_list_remove_return_type != 201806L
-# error "__cpp_lib_list_remove_return_type should have the value 201806L in c++2b"
+# error "__cpp_lib_list_remove_return_type should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_logical_traits
-# error "__cpp_lib_logical_traits should be defined in c++2b"
+# error "__cpp_lib_logical_traits should be defined in c++23"
# endif
# if __cpp_lib_logical_traits != 201510L
-# error "__cpp_lib_logical_traits should have the value 201510L in c++2b"
+# error "__cpp_lib_logical_traits should have the value 201510L in c++23"
# endif
# ifndef __cpp_lib_make_from_tuple
-# error "__cpp_lib_make_from_tuple should be defined in c++2b"
+# error "__cpp_lib_make_from_tuple should be defined in c++23"
# endif
# if __cpp_lib_make_from_tuple != 201606L
-# error "__cpp_lib_make_from_tuple should have the value 201606L in c++2b"
+# error "__cpp_lib_make_from_tuple should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_make_reverse_iterator
-# error "__cpp_lib_make_reverse_iterator should be defined in c++2b"
+# error "__cpp_lib_make_reverse_iterator should be defined in c++23"
# endif
# if __cpp_lib_make_reverse_iterator != 201402L
-# error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++2b"
+# error "__cpp_lib_make_reverse_iterator should have the value 201402L in c++23"
# endif
# ifndef __cpp_lib_make_unique
-# error "__cpp_lib_make_unique should be defined in c++2b"
+# error "__cpp_lib_make_unique should be defined in c++23"
# endif
# if __cpp_lib_make_unique != 201304L
-# error "__cpp_lib_make_unique should have the value 201304L in c++2b"
+# error "__cpp_lib_make_unique should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_map_try_emplace
-# error "__cpp_lib_map_try_emplace should be defined in c++2b"
+# error "__cpp_lib_map_try_emplace should be defined in c++23"
# endif
# if __cpp_lib_map_try_emplace != 201411L
-# error "__cpp_lib_map_try_emplace should have the value 201411L in c++2b"
+# error "__cpp_lib_map_try_emplace should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_math_constants
-# error "__cpp_lib_math_constants should be defined in c++2b"
+# error "__cpp_lib_math_constants should be defined in c++23"
# endif
# if __cpp_lib_math_constants != 201907L
-# error "__cpp_lib_math_constants should have the value 201907L in c++2b"
+# error "__cpp_lib_math_constants should have the value 201907L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_math_special_functions
-# error "__cpp_lib_math_special_functions should be defined in c++2b"
+# error "__cpp_lib_math_special_functions should be defined in c++23"
# endif
# if __cpp_lib_math_special_functions != 201603L
-# error "__cpp_lib_math_special_functions should have the value 201603L in c++2b"
+# error "__cpp_lib_math_special_functions should have the value 201603L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_math_special_functions
@@ -4507,10 +4507,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_mdspan
-# error "__cpp_lib_mdspan should be defined in c++2b"
+# error "__cpp_lib_mdspan should be defined in c++23"
# endif
# if __cpp_lib_mdspan != 202207L
-# error "__cpp_lib_mdspan should have the value 202207L in c++2b"
+# error "__cpp_lib_mdspan should have the value 202207L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_mdspan
@@ -4519,25 +4519,25 @@
# endif
# ifndef __cpp_lib_memory_resource
-# error "__cpp_lib_memory_resource should be defined in c++2b"
+# error "__cpp_lib_memory_resource should be defined in c++23"
# endif
# if __cpp_lib_memory_resource != 201603L
-# error "__cpp_lib_memory_resource should have the value 201603L in c++2b"
+# error "__cpp_lib_memory_resource should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_move_iterator_concept
-# error "__cpp_lib_move_iterator_concept should be defined in c++2b"
+# error "__cpp_lib_move_iterator_concept should be defined in c++23"
# endif
# if __cpp_lib_move_iterator_concept != 202207L
-# error "__cpp_lib_move_iterator_concept should have the value 202207L in c++2b"
+# error "__cpp_lib_move_iterator_concept should have the value 202207L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_move_only_function
-# error "__cpp_lib_move_only_function should be defined in c++2b"
+# error "__cpp_lib_move_only_function should be defined in c++23"
# endif
# if __cpp_lib_move_only_function != 202110L
-# error "__cpp_lib_move_only_function should have the value 202110L in c++2b"
+# error "__cpp_lib_move_only_function should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_move_only_function
@@ -4546,46 +4546,46 @@
# endif
# ifndef __cpp_lib_node_extract
-# error "__cpp_lib_node_extract should be defined in c++2b"
+# error "__cpp_lib_node_extract should be defined in c++23"
# endif
# if __cpp_lib_node_extract != 201606L
-# error "__cpp_lib_node_extract should have the value 201606L in c++2b"
+# error "__cpp_lib_node_extract should have the value 201606L in c++23"
# endif
# ifndef __cpp_lib_nonmember_container_access
-# error "__cpp_lib_nonmember_container_access should be defined in c++2b"
+# error "__cpp_lib_nonmember_container_access should be defined in c++23"
# endif
# if __cpp_lib_nonmember_container_access != 201411L
-# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++2b"
+# error "__cpp_lib_nonmember_container_access should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_not_fn
-# error "__cpp_lib_not_fn should be defined in c++2b"
+# error "__cpp_lib_not_fn should be defined in c++23"
# endif
# if __cpp_lib_not_fn != 201603L
-# error "__cpp_lib_not_fn should have the value 201603L in c++2b"
+# error "__cpp_lib_not_fn should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_null_iterators
-# error "__cpp_lib_null_iterators should be defined in c++2b"
+# error "__cpp_lib_null_iterators should be defined in c++23"
# endif
# if __cpp_lib_null_iterators != 201304L
-# error "__cpp_lib_null_iterators should have the value 201304L in c++2b"
+# error "__cpp_lib_null_iterators should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_optional
-# error "__cpp_lib_optional should be defined in c++2b"
+# error "__cpp_lib_optional should be defined in c++23"
# endif
# if __cpp_lib_optional != 202110L
-# error "__cpp_lib_optional should have the value 202110L in c++2b"
+# error "__cpp_lib_optional should have the value 202110L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_out_ptr
-# error "__cpp_lib_out_ptr should be defined in c++2b"
+# error "__cpp_lib_out_ptr should be defined in c++23"
# endif
# if __cpp_lib_out_ptr != 202106L
-# error "__cpp_lib_out_ptr should have the value 202106L in c++2b"
+# error "__cpp_lib_out_ptr should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_out_ptr
@@ -4595,10 +4595,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_parallel_algorithm
-# error "__cpp_lib_parallel_algorithm should be defined in c++2b"
+# error "__cpp_lib_parallel_algorithm should be defined in c++23"
# endif
# if __cpp_lib_parallel_algorithm != 201603L
-# error "__cpp_lib_parallel_algorithm should have the value 201603L in c++2b"
+# error "__cpp_lib_parallel_algorithm should have the value 201603L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_parallel_algorithm
@@ -4607,39 +4607,39 @@
# endif
# ifndef __cpp_lib_polymorphic_allocator
-# error "__cpp_lib_polymorphic_allocator should be defined in c++2b"
+# error "__cpp_lib_polymorphic_allocator should be defined in c++23"
# endif
# if __cpp_lib_polymorphic_allocator != 201902L
-# error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++2b"
+# error "__cpp_lib_polymorphic_allocator should have the value 201902L in c++23"
# endif
# ifndef __cpp_lib_quoted_string_io
-# error "__cpp_lib_quoted_string_io should be defined in c++2b"
+# error "__cpp_lib_quoted_string_io should be defined in c++23"
# endif
# if __cpp_lib_quoted_string_io != 201304L
-# error "__cpp_lib_quoted_string_io should have the value 201304L in c++2b"
+# error "__cpp_lib_quoted_string_io should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_ranges
-# error "__cpp_lib_ranges should be defined in c++2b"
+# error "__cpp_lib_ranges should be defined in c++23"
# endif
# if __cpp_lib_ranges != 202106L
-# error "__cpp_lib_ranges should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges should have the value 202106L in c++23"
# endif
# ifndef __cpp_lib_ranges_as_rvalue
-# error "__cpp_lib_ranges_as_rvalue should be defined in c++2b"
+# error "__cpp_lib_ranges_as_rvalue should be defined in c++23"
# endif
# if __cpp_lib_ranges_as_rvalue != 202207L
-# error "__cpp_lib_ranges_as_rvalue should have the value 202207L in c++2b"
+# error "__cpp_lib_ranges_as_rvalue should have the value 202207L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_chunk
-# error "__cpp_lib_ranges_chunk should be defined in c++2b"
+# error "__cpp_lib_ranges_chunk should be defined in c++23"
# endif
# if __cpp_lib_ranges_chunk != 202202L
-# error "__cpp_lib_ranges_chunk should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_chunk should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_chunk
@@ -4649,10 +4649,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_chunk_by
-# error "__cpp_lib_ranges_chunk_by should be defined in c++2b"
+# error "__cpp_lib_ranges_chunk_by should be defined in c++23"
# endif
# if __cpp_lib_ranges_chunk_by != 202202L
-# error "__cpp_lib_ranges_chunk_by should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_chunk_by should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_chunk_by
@@ -4662,10 +4662,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_iota
-# error "__cpp_lib_ranges_iota should be defined in c++2b"
+# error "__cpp_lib_ranges_iota should be defined in c++23"
# endif
# if __cpp_lib_ranges_iota != 202202L
-# error "__cpp_lib_ranges_iota should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_iota should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_iota
@@ -4675,10 +4675,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_join_with
-# error "__cpp_lib_ranges_join_with should be defined in c++2b"
+# error "__cpp_lib_ranges_join_with should be defined in c++23"
# endif
# if __cpp_lib_ranges_join_with != 202202L
-# error "__cpp_lib_ranges_join_with should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_join_with should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_join_with
@@ -4688,10 +4688,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_slide
-# error "__cpp_lib_ranges_slide should be defined in c++2b"
+# error "__cpp_lib_ranges_slide should be defined in c++23"
# endif
# if __cpp_lib_ranges_slide != 202202L
-# error "__cpp_lib_ranges_slide should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_slide should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_slide
@@ -4701,10 +4701,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_starts_ends_with
-# error "__cpp_lib_ranges_starts_ends_with should be defined in c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should be defined in c++23"
# endif
# if __cpp_lib_ranges_starts_ends_with != 202106L
-# error "__cpp_lib_ranges_starts_ends_with should have the value 202106L in c++2b"
+# error "__cpp_lib_ranges_starts_ends_with should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_starts_ends_with
@@ -4714,10 +4714,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_to_container
-# error "__cpp_lib_ranges_to_container should be defined in c++2b"
+# error "__cpp_lib_ranges_to_container should be defined in c++23"
# endif
# if __cpp_lib_ranges_to_container != 202202L
-# error "__cpp_lib_ranges_to_container should have the value 202202L in c++2b"
+# error "__cpp_lib_ranges_to_container should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_to_container
@@ -4727,10 +4727,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_ranges_zip
-# error "__cpp_lib_ranges_zip should be defined in c++2b"
+# error "__cpp_lib_ranges_zip should be defined in c++23"
# endif
# if __cpp_lib_ranges_zip != 202110L
-# error "__cpp_lib_ranges_zip should have the value 202110L in c++2b"
+# error "__cpp_lib_ranges_zip should have the value 202110L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_ranges_zip
@@ -4739,18 +4739,18 @@
# endif
# ifndef __cpp_lib_raw_memory_algorithms
-# error "__cpp_lib_raw_memory_algorithms should be defined in c++2b"
+# error "__cpp_lib_raw_memory_algorithms should be defined in c++23"
# endif
# if __cpp_lib_raw_memory_algorithms != 201606L
-# error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++2b"
+# error "__cpp_lib_raw_memory_algorithms should have the value 201606L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_reference_from_temporary
-# error "__cpp_lib_reference_from_temporary should be defined in c++2b"
+# error "__cpp_lib_reference_from_temporary should be defined in c++23"
# endif
# if __cpp_lib_reference_from_temporary != 202202L
-# error "__cpp_lib_reference_from_temporary should have the value 202202L in c++2b"
+# error "__cpp_lib_reference_from_temporary should have the value 202202L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_reference_from_temporary
@@ -4759,46 +4759,46 @@
# endif
# ifndef __cpp_lib_remove_cvref
-# error "__cpp_lib_remove_cvref should be defined in c++2b"
+# error "__cpp_lib_remove_cvref should be defined in c++23"
# endif
# if __cpp_lib_remove_cvref != 201711L
-# error "__cpp_lib_remove_cvref should have the value 201711L in c++2b"
+# error "__cpp_lib_remove_cvref should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_result_of_sfinae
-# error "__cpp_lib_result_of_sfinae should be defined in c++2b"
+# error "__cpp_lib_result_of_sfinae should be defined in c++23"
# endif
# if __cpp_lib_result_of_sfinae != 201210L
-# error "__cpp_lib_result_of_sfinae should have the value 201210L in c++2b"
+# error "__cpp_lib_result_of_sfinae should have the value 201210L in c++23"
# endif
# ifndef __cpp_lib_robust_nonmodifying_seq_ops
-# error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++2b"
+# error "__cpp_lib_robust_nonmodifying_seq_ops should be defined in c++23"
# endif
# if __cpp_lib_robust_nonmodifying_seq_ops != 201304L
-# error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++2b"
+# error "__cpp_lib_robust_nonmodifying_seq_ops should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_sample
-# error "__cpp_lib_sample should be defined in c++2b"
+# error "__cpp_lib_sample should be defined in c++23"
# endif
# if __cpp_lib_sample != 201603L
-# error "__cpp_lib_sample should have the value 201603L in c++2b"
+# error "__cpp_lib_sample should have the value 201603L in c++23"
# endif
# ifndef __cpp_lib_scoped_lock
-# error "__cpp_lib_scoped_lock should be defined in c++2b"
+# error "__cpp_lib_scoped_lock should be defined in c++23"
# endif
# if __cpp_lib_scoped_lock != 201703L
-# error "__cpp_lib_scoped_lock should have the value 201703L in c++2b"
+# error "__cpp_lib_scoped_lock should have the value 201703L in c++23"
# endif
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)
# ifndef __cpp_lib_semaphore
-# error "__cpp_lib_semaphore should be defined in c++2b"
+# error "__cpp_lib_semaphore should be defined in c++23"
# endif
# if __cpp_lib_semaphore != 201907L
-# error "__cpp_lib_semaphore should have the value 201907L in c++2b"
+# error "__cpp_lib_semaphore should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_semaphore
@@ -4808,10 +4808,10 @@
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SHARED_MUTEX)
# ifndef __cpp_lib_shared_mutex
-# error "__cpp_lib_shared_mutex should be defined in c++2b"
+# error "__cpp_lib_shared_mutex should be defined in c++23"
# endif
# if __cpp_lib_shared_mutex != 201505L
-# error "__cpp_lib_shared_mutex should have the value 201505L in c++2b"
+# error "__cpp_lib_shared_mutex should have the value 201505L in c++23"
# endif
# else
# ifdef __cpp_lib_shared_mutex
@@ -4820,25 +4820,25 @@
# endif
# ifndef __cpp_lib_shared_ptr_arrays
-# error "__cpp_lib_shared_ptr_arrays should be defined in c++2b"
+# error "__cpp_lib_shared_ptr_arrays should be defined in c++23"
# endif
# if __cpp_lib_shared_ptr_arrays != 201707L
-# error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++2b"
+# error "__cpp_lib_shared_ptr_arrays should have the value 201707L in c++23"
# endif
# ifndef __cpp_lib_shared_ptr_weak_type
-# error "__cpp_lib_shared_ptr_weak_type should be defined in c++2b"
+# error "__cpp_lib_shared_ptr_weak_type should be defined in c++23"
# endif
# if __cpp_lib_shared_ptr_weak_type != 201606L
-# error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++2b"
+# error "__cpp_lib_shared_ptr_weak_type should have the value 201606L in c++23"
# endif
# if !defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SHARED_MUTEX)
# ifndef __cpp_lib_shared_timed_mutex
-# error "__cpp_lib_shared_timed_mutex should be defined in c++2b"
+# error "__cpp_lib_shared_timed_mutex should be defined in c++23"
# endif
# if __cpp_lib_shared_timed_mutex != 201402L
-# error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++2b"
+# error "__cpp_lib_shared_timed_mutex should have the value 201402L in c++23"
# endif
# else
# ifdef __cpp_lib_shared_timed_mutex
@@ -4847,18 +4847,18 @@
# endif
# ifndef __cpp_lib_shift
-# error "__cpp_lib_shift should be defined in c++2b"
+# error "__cpp_lib_shift should be defined in c++23"
# endif
# if __cpp_lib_shift != 201806L
-# error "__cpp_lib_shift should have the value 201806L in c++2b"
+# error "__cpp_lib_shift should have the value 201806L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_smart_ptr_for_overwrite
-# error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++2b"
+# error "__cpp_lib_smart_ptr_for_overwrite should be defined in c++23"
# endif
# if __cpp_lib_smart_ptr_for_overwrite != 202002L
-# error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++2b"
+# error "__cpp_lib_smart_ptr_for_overwrite should have the value 202002L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_smart_ptr_for_overwrite
@@ -4868,10 +4868,10 @@
# if __has_builtin(__builtin_source_location) && !(defined(TEST_APPLE_CLANG_VER) && TEST_APPLE_CLANG_VER <= 1403)
# ifndef __cpp_lib_source_location
-# error "__cpp_lib_source_location should be defined in c++2b"
+# error "__cpp_lib_source_location should be defined in c++23"
# endif
# if __cpp_lib_source_location != 201907L
-# error "__cpp_lib_source_location should have the value 201907L in c++2b"
+# error "__cpp_lib_source_location should have the value 201907L in c++23"
# endif
# else
# ifdef __cpp_lib_source_location
@@ -4880,18 +4880,18 @@
# endif
# ifndef __cpp_lib_span
-# error "__cpp_lib_span should be defined in c++2b"
+# error "__cpp_lib_span should be defined in c++23"
# endif
# if __cpp_lib_span != 202002L
-# error "__cpp_lib_span should have the value 202002L in c++2b"
+# error "__cpp_lib_span should have the value 202002L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_spanstream
-# error "__cpp_lib_spanstream should be defined in c++2b"
+# error "__cpp_lib_spanstream should be defined in c++23"
# endif
# if __cpp_lib_spanstream != 202106L
-# error "__cpp_lib_spanstream should have the value 202106L in c++2b"
+# error "__cpp_lib_spanstream should have the value 202106L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_spanstream
@@ -4900,18 +4900,18 @@
# endif
# ifndef __cpp_lib_ssize
-# error "__cpp_lib_ssize should be defined in c++2b"
+# error "__cpp_lib_ssize should be defined in c++23"
# endif
# if __cpp_lib_ssize != 201902L
-# error "__cpp_lib_ssize should have the value 201902L in c++2b"
+# error "__cpp_lib_ssize should have the value 201902L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_stacktrace
-# error "__cpp_lib_stacktrace should be defined in c++2b"
+# error "__cpp_lib_stacktrace should be defined in c++23"
# endif
# if __cpp_lib_stacktrace != 202011L
-# error "__cpp_lib_stacktrace should have the value 202011L in c++2b"
+# error "__cpp_lib_stacktrace should have the value 202011L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_stacktrace
@@ -4920,53 +4920,53 @@
# endif
# ifndef __cpp_lib_starts_ends_with
-# error "__cpp_lib_starts_ends_with should be defined in c++2b"
+# error "__cpp_lib_starts_ends_with should be defined in c++23"
# endif
# if __cpp_lib_starts_ends_with != 201711L
-# error "__cpp_lib_starts_ends_with should have the value 201711L in c++2b"
+# error "__cpp_lib_starts_ends_with should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_stdatomic_h
-# error "__cpp_lib_stdatomic_h should be defined in c++2b"
+# error "__cpp_lib_stdatomic_h should be defined in c++23"
# endif
# if __cpp_lib_stdatomic_h != 202011L
-# error "__cpp_lib_stdatomic_h should have the value 202011L in c++2b"
+# error "__cpp_lib_stdatomic_h should have the value 202011L in c++23"
# endif
# ifndef __cpp_lib_string_contains
-# error "__cpp_lib_string_contains should be defined in c++2b"
+# error "__cpp_lib_string_contains should be defined in c++23"
# endif
# if __cpp_lib_string_contains != 202011L
-# error "__cpp_lib_string_contains should have the value 202011L in c++2b"
+# error "__cpp_lib_string_contains should have the value 202011L in c++23"
# endif
# ifndef __cpp_lib_string_resize_and_overwrite
-# error "__cpp_lib_string_resize_and_overwrite should be defined in c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should be defined in c++23"
# endif
# if __cpp_lib_string_resize_and_overwrite != 202110L
-# error "__cpp_lib_string_resize_and_overwrite should have the value 202110L in c++2b"
+# error "__cpp_lib_string_resize_and_overwrite should have the value 202110L in c++23"
# endif
# ifndef __cpp_lib_string_udls
-# error "__cpp_lib_string_udls should be defined in c++2b"
+# error "__cpp_lib_string_udls should be defined in c++23"
# endif
# if __cpp_lib_string_udls != 201304L
-# error "__cpp_lib_string_udls should have the value 201304L in c++2b"
+# error "__cpp_lib_string_udls should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_string_view
-# error "__cpp_lib_string_view should be defined in c++2b"
+# error "__cpp_lib_string_view should be defined in c++23"
# endif
# if __cpp_lib_string_view != 201803L
-# error "__cpp_lib_string_view should have the value 201803L in c++2b"
+# error "__cpp_lib_string_view should have the value 201803L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_syncbuf
-# error "__cpp_lib_syncbuf should be defined in c++2b"
+# error "__cpp_lib_syncbuf should be defined in c++23"
# endif
# if __cpp_lib_syncbuf != 201803L
-# error "__cpp_lib_syncbuf should have the value 201803L in c++2b"
+# error "__cpp_lib_syncbuf should have the value 201803L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_syncbuf
@@ -4976,10 +4976,10 @@
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_three_way_comparison
-# error "__cpp_lib_three_way_comparison should be defined in c++2b"
+# error "__cpp_lib_three_way_comparison should be defined in c++23"
# endif
# if __cpp_lib_three_way_comparison != 201907L
-# error "__cpp_lib_three_way_comparison should have the value 201907L in c++2b"
+# error "__cpp_lib_three_way_comparison should have the value 201907L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_three_way_comparison
@@ -4988,25 +4988,25 @@
# endif
# ifndef __cpp_lib_to_address
-# error "__cpp_lib_to_address should be defined in c++2b"
+# error "__cpp_lib_to_address should be defined in c++23"
# endif
# if __cpp_lib_to_address != 201711L
-# error "__cpp_lib_to_address should have the value 201711L in c++2b"
+# error "__cpp_lib_to_address should have the value 201711L in c++23"
# endif
# ifndef __cpp_lib_to_array
-# error "__cpp_lib_to_array should be defined in c++2b"
+# error "__cpp_lib_to_array should be defined in c++23"
# endif
# if __cpp_lib_to_array != 201907L
-# error "__cpp_lib_to_array should have the value 201907L in c++2b"
+# error "__cpp_lib_to_array should have the value 201907L in c++23"
# endif
# if !defined(_LIBCPP_VERSION)
# ifndef __cpp_lib_to_chars
-# error "__cpp_lib_to_chars should be defined in c++2b"
+# error "__cpp_lib_to_chars should be defined in c++23"
# endif
# if __cpp_lib_to_chars != 201611L
-# error "__cpp_lib_to_chars should have the value 201611L in c++2b"
+# error "__cpp_lib_to_chars should have the value 201611L in c++23"
# endif
# else // _LIBCPP_VERSION
# ifdef __cpp_lib_to_chars
@@ -5015,94 +5015,94 @@
# endif
# ifndef __cpp_lib_to_underlying
-# error "__cpp_lib_to_underlying should be defined in c++2b"
+# error "__cpp_lib_to_underlying should be defined in c++23"
# endif
# if __cpp_lib_to_underlying != 202102L
-# error "__cpp_lib_to_underlying should have the value 202102L in c++2b"
+# error "__cpp_lib_to_underlying should have the value 202102L in c++23"
# endif
# ifndef __cpp_lib_transformation_trait_aliases
-# error "__cpp_lib_transformation_trait_aliases should be defined in c++2b"
+# error "__cpp_lib_transformation_trait_aliases should be defined in c++23"
# endif
# if __cpp_lib_transformation_trait_aliases != 201304L
-# error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++2b"
+# error "__cpp_lib_transformation_trait_aliases should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_transparent_operators
-# error "__cpp_lib_transparent_operators should be defined in c++2b"
+# error "__cpp_lib_transparent_operators should be defined in c++23"
# endif
# if __cpp_lib_transparent_operators != 201510L
-# error "__cpp_lib_transparent_operators should have the value 201510L in c++2b"
+# error "__cpp_lib_transparent_operators should have the value 201510L in c++23"
# endif
# ifndef __cpp_lib_tuple_element_t
-# error "__cpp_lib_tuple_element_t should be defined in c++2b"
+# error "__cpp_lib_tuple_element_t should be defined in c++23"
# endif
# if __cpp_lib_tuple_element_t != 201402L
-# error "__cpp_lib_tuple_element_t should have the value 201402L in c++2b"
+# error "__cpp_lib_tuple_element_t should have the value 201402L in c++23"
# endif
# ifndef __cpp_lib_tuples_by_type
-# error "__cpp_lib_tuples_by_type should be defined in c++2b"
+# error "__cpp_lib_tuples_by_type should be defined in c++23"
# endif
# if __cpp_lib_tuples_by_type != 201304L
-# error "__cpp_lib_tuples_by_type should have the value 201304L in c++2b"
+# error "__cpp_lib_tuples_by_type should have the value 201304L in c++23"
# endif
# ifndef __cpp_lib_type_identity
-# error "__cpp_lib_type_identity should be defined in c++2b"
+# error "__cpp_lib_type_identity should be defined in c++23"
# endif
# if __cpp_lib_type_identity != 201806L
-# error "__cpp_lib_type_identity should have the value 201806L in c++2b"
+# error "__cpp_lib_type_identity should have the value 201806L in c++23"
# endif
# ifndef __cpp_lib_type_trait_variable_templates
-# error "__cpp_lib_type_trait_variable_templates should be defined in c++2b"
+# error "__cpp_lib_type_trait_variable_templates should be defined in c++23"
# endif
# if __cpp_lib_type_trait_variable_templates != 201510L
-# error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++2b"
+# error "__cpp_lib_type_trait_variable_templates should have the value 201510L in c++23"
# endif
# ifndef __cpp_lib_uncaught_exceptions
-# error "__cpp_lib_uncaught_exceptions should be defined in c++2b"
+# error "__cpp_lib_uncaught_exceptions should be defined in c++23"
# endif
# if __cpp_lib_uncaught_exceptions != 201411L
-# error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++2b"
+# error "__cpp_lib_uncaught_exceptions should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_unordered_map_try_emplace
-# error "__cpp_lib_unordered_map_try_emplace should be defined in c++2b"
+# error "__cpp_lib_unordered_map_try_emplace should be defined in c++23"
# endif
# if __cpp_lib_unordered_map_try_emplace != 201411L
-# error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++2b"
+# error "__cpp_lib_unordered_map_try_emplace should have the value 201411L in c++23"
# endif
# ifndef __cpp_lib_unreachable
-# error "__cpp_lib_unreachable should be defined in c++2b"
+# error "__cpp_lib_unreachable should be defined in c++23"
# endif
# if __cpp_lib_unreachable != 202202L
-# error "__cpp_lib_unreachable should have the value 202202L in c++2b"
+# error "__cpp_lib_unreachable should have the value 202202L in c++23"
# endif
# ifndef __cpp_lib_unwrap_ref
-# error "__cpp_lib_unwrap_ref should be defined in c++2b"
+# error "__cpp_lib_unwrap_ref should be defined in c++23"
# endif
# if __cpp_lib_unwrap_ref != 201811L
-# error "__cpp_lib_unwrap_ref should have the value 201811L in c++2b"
+# error "__cpp_lib_unwrap_ref should have the value 201811L in c++23"
# endif
# ifndef __cpp_lib_variant
-# error "__cpp_lib_variant should be defined in c++2b"
+# error "__cpp_lib_variant should be defined in c++23"
# endif
# if __cpp_lib_variant != 202102L
-# error "__cpp_lib_variant should have the value 202102L in c++2b"
+# error "__cpp_lib_variant should have the value 202102L in c++23"
# endif
# ifndef __cpp_lib_void_t
-# error "__cpp_lib_void_t should be defined in c++2b"
+# error "__cpp_lib_void_t should be defined in c++23"
# endif
# if __cpp_lib_void_t != 201411L
-# error "__cpp_lib_void_t should have the value 201411L in c++2b"
+# error "__cpp_lib_void_t should have the value 201411L in c++23"
# endif
#endif // TEST_STD_VER > 20
diff --git a/libcxx/test/std/strings/basic.string/string.cons/nullptr.compile.pass.cpp b/libcxx/test/std/strings/basic.string/string.cons/nullptr.compile.pass.cpp
index 3b6a00ec135d4..fd6232ce72454 100644
--- a/libcxx/test/std/strings/basic.string/string.cons/nullptr.compile.pass.cpp
+++ b/libcxx/test/std/strings/basic.string/string.cons/nullptr.compile.pass.cpp
@@ -10,8 +10,8 @@
// <string>
-// basic_string(nullptr_t) = delete; // C++2b
-// basic_string& operator=(nullptr_t) = delete; // C++2b
+// basic_string(nullptr_t) = delete; // C++23
+// basic_string& operator=(nullptr_t) = delete; // C++23
#include <string>
#include <type_traits>
diff --git a/libcxx/test/std/strings/string.view/string.view.cons/nullptr.compile.pass.cpp b/libcxx/test/std/strings/string.view/string.view.cons/nullptr.compile.pass.cpp
index 2517e77a16d49..d7035f82fe379 100644
--- a/libcxx/test/std/strings/string.view/string.view.cons/nullptr.compile.pass.cpp
+++ b/libcxx/test/std/strings/string.view/string.view.cons/nullptr.compile.pass.cpp
@@ -10,7 +10,7 @@
// <string_view>
-// basic_string_view(nullptr_t) = delete; // C++2b
+// basic_string_view(nullptr_t) = delete; // C++23
#include <string_view>
#include <type_traits>
diff --git a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_scoped_enum.pass.cpp b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_scoped_enum.pass.cpp
index ca72af3883446..7fdf0cc1d695c 100644
--- a/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_scoped_enum.pass.cpp
+++ b/libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_scoped_enum.pass.cpp
@@ -10,7 +10,7 @@
// type_traits
-// is_scoped_enum // C++2b
+// is_scoped_enum // C++23
#include <type_traits>
#include <cstddef> // for std::nullptr_t
diff --git a/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.pass.cpp b/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.pass.cpp
index d57dfd43f5b77..cd4e14d94de95 100644
--- a/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.pass.cpp
+++ b/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.pass.cpp
@@ -10,7 +10,7 @@
// [utility.underlying], to_underlying
// template <class T>
-// constexpr underlying_type_t<T> to_underlying( T value ) noexcept; // C++2b
+// constexpr underlying_type_t<T> to_underlying( T value ) noexcept; // C++23
#include <utility>
#include <cassert>
diff --git a/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.verify.cpp b/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.verify.cpp
index 9236d6e284b5d..aa83eec6cbe47 100644
--- a/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.verify.cpp
+++ b/libcxx/test/std/utilities/utility/utility.underlying/to_underlying.verify.cpp
@@ -10,7 +10,7 @@
// [utility.underlying], to_underlying
// template <class T>
-// constexpr underlying_type_t<T> to_underlying( T value ) noexcept; // C++2b
+// constexpr underlying_type_t<T> to_underlying( T value ) noexcept; // C++23
#include <utility>
diff --git a/libcxx/test/support/test_macros.h b/libcxx/test/support/test_macros.h
index 210bbf06614ad..c3f3d8675aa7a 100644
--- a/libcxx/test/support/test_macros.h
+++ b/libcxx/test/support/test_macros.h
@@ -99,6 +99,8 @@
# define TEST_STD_VER 17
#elif __cplusplus <= 202002L
# define TEST_STD_VER 20
+#elif __cplusplus <= 202302L
+# define TEST_STD_VER 23
#else
# define TEST_STD_VER 99 // greater than current standard
// This is deliberately
diff erent than _LIBCPP_STD_VER to discourage matching them up.
diff --git a/libcxx/utils/ci/buildkite-pipeline-clang.yml b/libcxx/utils/ci/buildkite-pipeline-clang.yml
index e0522e491cfe9..073a74ae4a6ee 100644
--- a/libcxx/utils/ci/buildkite-pipeline-clang.yml
+++ b/libcxx/utils/ci/buildkite-pipeline-clang.yml
@@ -63,14 +63,14 @@ steps:
limit: 2
timeout_in_minutes: 120
- - label: "C++2b"
+ - label: "C++23"
commands:
- "buildkite-agent artifact download install.tar.xz ."
- "tar -xvf install.tar.xz"
- "export CC=$(pwd)/install/bin/clang"
- "export CXX=$(pwd)/install/bin/clang++"
- "chmod +x install/bin/clang install/bin/clang++"
- - "libcxx/utils/ci/run-buildbot generic-cxx2b"
+ - "libcxx/utils/ci/run-buildbot generic-cxx23"
artifact_paths:
- "**/test-results.xml"
- "**/crash_diagnostics/*"
diff --git a/libcxx/utils/ci/buildkite-pipeline.yml b/libcxx/utils/ci/buildkite-pipeline.yml
index 3323fdb8b2d91..e269e4935709e 100644
--- a/libcxx/utils/ci/buildkite-pipeline.yml
+++ b/libcxx/utils/ci/buildkite-pipeline.yml
@@ -107,8 +107,8 @@ steps:
limit: 2
timeout_in_minutes: 120
- - label: "C++2b"
- command: "libcxx/utils/ci/run-buildbot generic-cxx2b"
+ - label: "C++23"
+ command: "libcxx/utils/ci/run-buildbot generic-cxx23"
artifact_paths:
- "**/test-results.xml"
- "**/*.abilist"
@@ -258,7 +258,7 @@ steps:
timeout_in_minutes: 120
- label: "Clang 15"
- command: "libcxx/utils/ci/run-buildbot generic-cxx2b"
+ command: "libcxx/utils/ci/run-buildbot generic-cxx23"
artifact_paths:
- "**/test-results.xml"
- "**/*.abilist"
@@ -277,7 +277,7 @@ steps:
timeout_in_minutes: 120
- label: "Clang 16"
- command: "libcxx/utils/ci/run-buildbot generic-cxx2b"
+ command: "libcxx/utils/ci/run-buildbot generic-cxx23"
artifact_paths:
- "**/test-results.xml"
- "**/*.abilist"
@@ -1029,7 +1029,7 @@ steps:
- group: "FreeBSD"
steps:
- label: "FreeBSD 13 amd64"
- command: "libcxx/utils/ci/run-buildbot generic-cxx2b"
+ command: "libcxx/utils/ci/run-buildbot generic-cxx23"
artifact_paths:
- "**/test-results.xml"
- "**/*.abilist"
diff --git a/libcxx/utils/ci/run-buildbot b/libcxx/utils/ci/run-buildbot
index 15a7c77a23032..7878a1b0832fb 100755
--- a/libcxx/utils/ci/run-buildbot
+++ b/libcxx/utils/ci/run-buildbot
@@ -276,9 +276,9 @@ generic-cxx20)
check-runtimes
check-abi-list
;;
-generic-cxx2b)
+generic-cxx23)
clean
- generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Generic-cxx2b.cmake"
+ generate-cmake -C "${MONOREPO_ROOT}/libcxx/cmake/caches/Generic-cxx23.cmake"
check-runtimes
check-abi-list
;;
diff --git a/libcxx/utils/generate_feature_test_macro_components.py b/libcxx/utils/generate_feature_test_macro_components.py
index c23ebd5b7a035..0ced059600716 100755
--- a/libcxx/utils/generate_feature_test_macro_components.py
+++ b/libcxx/utils/generate_feature_test_macro_components.py
@@ -62,7 +62,7 @@ def add_version_header(tc):
feature_test_macros = [ add_version_header(x) for x in [
{
"name": "__cpp_lib_adaptor_iterator_pair_constructor",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["queue", "stack"],
}, {
"name": "__cpp_lib_addressof_constexpr",
@@ -70,7 +70,7 @@ def add_version_header(tc):
"headers": ["memory"],
}, {
"name": "__cpp_lib_allocate_at_least",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["memory"],
}, {
"name": "__cpp_lib_allocator_traits_is_always_equal",
@@ -94,7 +94,7 @@ def add_version_header(tc):
"headers": ["utility"],
}, {
"name": "__cpp_lib_associative_heterogeneous_erasure",
- "values": { "c++2b": 202110 },
+ "values": { "c++23": 202110 },
"headers": ["map", "set", "unordered_map", "unordered_set"],
"unimplemented": True,
}, {
@@ -146,7 +146,7 @@ def add_version_header(tc):
"libcxx_guard": "!defined(_LIBCPP_HAS_NO_THREADS) && !defined(_LIBCPP_AVAILABILITY_HAS_NO_SYNC)",
}, {
"name": "__cpp_lib_bind_back",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["functional"],
"unimplemented": True,
}, {
@@ -180,7 +180,7 @@ def add_version_header(tc):
"headers": ["cstddef"],
}, {
"name": "__cpp_lib_byteswap",
- "values": { "c++2b": 202110 },
+ "values": { "c++23": 202110 },
"headers": ["bit"],
}, {
"name": "__cpp_lib_char8_t",
@@ -214,15 +214,15 @@ def add_version_header(tc):
"headers": ["algorithm", "utility"],
}, {
"name": "__cpp_lib_constexpr_bitset",
- "values": { "c++2b": 202207 },
+ "values": { "c++23": 202207 },
"headers": ["bitset"],
}, {
"name": "__cpp_lib_constexpr_charconv",
- "values": { "c++2b": 202207 },
+ "values": { "c++23": 202207 },
"headers": ["charconv"],
}, {
"name": "__cpp_lib_constexpr_cmath",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["cmath", "cstdlib"],
"unimplemented": True,
}, {
@@ -243,7 +243,7 @@ def add_version_header(tc):
"headers": ["iterator"],
}, {
"name": "__cpp_lib_constexpr_memory",
- "values": { "c++20": 201811, "c++2b": 202202 },
+ "values": { "c++20": 201811, "c++23": 202202 },
"headers": ["memory"],
}, {
"name": "__cpp_lib_constexpr_numeric",
@@ -263,7 +263,7 @@ def add_version_header(tc):
"headers": ["tuple"],
}, {
"name": "__cpp_lib_constexpr_typeinfo",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["typeinfo"],
}, {
"name": "__cpp_lib_constexpr_utility",
@@ -306,7 +306,7 @@ def add_version_header(tc):
"unimplemented": True,
}, {
"name": "__cpp_lib_expected",
- "values": { "c++2b": 202211 },
+ "values": { "c++23": 202211 },
"headers": ["expected"],
}, {
"name": "__cpp_lib_filesystem",
@@ -329,20 +329,20 @@ def add_version_header(tc):
"unimplemented": True,
}, {
"name": "__cpp_lib_format_ranges",
- "values": { "c++2b": 202207 },
+ "values": { "c++23": 202207 },
"headers": ["format"],
"test_suite_guard": "!defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)",
"libcxx_guard": "!defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)",
}, {
"name": "__cpp_lib_formatters",
- "values": { "c++2b": 202302 },
+ "values": { "c++23": 202302 },
"headers": ["stacktrace", "thread"],
"test_suite_guard": "!defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)",
"libcxx_guard": "!defined(_LIBCPP_HAS_NO_INCOMPLETE_FORMAT)",
"unimplemented": True,
}, {
"name": "__cpp_lib_forward_like",
- "values": { "c++2b": 202207 },
+ "values": { "c++23": 202207 },
"headers": ["utility"],
}, {
"name": "__cpp_lib_gcd_lcm",
@@ -400,7 +400,7 @@ def add_version_header(tc):
"headers": ["functional"],
}, {
"name": "__cpp_lib_invoke_r",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["functional"],
}, {
"name": "__cpp_lib_is_aggregate",
@@ -438,7 +438,7 @@ def add_version_header(tc):
"unimplemented": True,
}, {
"name": "__cpp_lib_is_scoped_enum",
- "values": { "c++2b": 202011 },
+ "values": { "c++23": 202011 },
"headers": ["type_traits"],
}, {
"name": "__cpp_lib_is_swappable",
@@ -496,7 +496,7 @@ def add_version_header(tc):
"unimplemented": True,
}, {
"name": "__cpp_lib_mdspan",
- "values": { "c++2b": 202207 },
+ "values": { "c++23": 202207 },
"headers": ["mdspan"],
"unimplemented": True,
}, {
@@ -509,7 +509,7 @@ def add_version_header(tc):
"headers": ["iterator"],
}, {
"name": "__cpp_lib_move_only_function",
- "values": { "c++2b": 202110 },
+ "values": { "c++23": 202110 },
"headers": ["functional"],
"unimplemented": True,
}, {
@@ -530,11 +530,11 @@ def add_version_header(tc):
"headers": ["iterator"],
}, {
"name": "__cpp_lib_optional",
- "values": { "c++17": 201606, "c++2b": 202110 },
+ "values": { "c++17": 201606, "c++23": 202110 },
"headers": ["optional"],
}, {
"name": "__cpp_lib_out_ptr",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["memory"],
"unimplemented": True,
}, {
@@ -556,46 +556,46 @@ def add_version_header(tc):
"headers": ["algorithm", "functional", "iterator", "memory", "ranges"],
}, {
"name": "__cpp_lib_ranges_as_rvalue",
- "values": { "c++2b": 202207 },
+ "values": { "c++23": 202207 },
"headers": ["ranges"],
}, {
"name": "__cpp_lib_ranges_chunk",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["ranges"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_chunk_by",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["ranges"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_iota",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["numeric"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_join_with",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["ranges"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_slide",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["ranges"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_starts_ends_with",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["algorithm"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_to_container",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["deque", "forward_list", "list", "map", "priority_queue", "queue", "set", "stack", "string", "unordered_map", "unordered_set", "vector"],
"unimplemented": True,
}, {
"name": "__cpp_lib_ranges_zip",
- "values": { "c++2b": 202110 },
+ "values": { "c++23": 202110 },
"headers": ["ranges", "tuple", "utility"],
"unimplemented": True,
}, {
@@ -604,7 +604,7 @@ def add_version_header(tc):
"headers": ["memory"],
}, {
"name": "__cpp_lib_reference_from_temporary",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["type_traits"],
"unimplemented": True,
}, {
@@ -674,7 +674,7 @@ def add_version_header(tc):
"headers": ["span"],
}, {
"name": "__cpp_lib_spanstream",
- "values": { "c++2b": 202106 },
+ "values": { "c++23": 202106 },
"headers": ["spanstream"],
"unimplemented": True,
}, {
@@ -683,7 +683,7 @@ def add_version_header(tc):
"headers": ["iterator"],
}, {
"name": "__cpp_lib_stacktrace",
- "values": { "c++2b": 202011 },
+ "values": { "c++23": 202011 },
"headers": ["stacktrace"],
"unimplemented": True,
}, {
@@ -692,15 +692,15 @@ def add_version_header(tc):
"headers": ["string", "string_view"],
}, {
"name": "__cpp_lib_stdatomic_h",
- "values": { "c++2b": 202011 },
+ "values": { "c++23": 202011 },
"headers": ["stdatomic.h"],
}, {
"name": "__cpp_lib_string_contains",
- "values": { "c++2b": 202011 },
+ "values": { "c++23": 202011 },
"headers": ["string", "string_view"],
}, {
"name": "__cpp_lib_string_resize_and_overwrite",
- "values": { "c++2b": 202110 },
+ "values": { "c++23": 202110 },
"headers": ["string"],
}, {
"name": "__cpp_lib_string_udls",
@@ -735,7 +735,7 @@ def add_version_header(tc):
"unimplemented": True,
}, {
"name": "__cpp_lib_to_underlying",
- "values": { "c++2b": 202102 },
+ "values": { "c++23": 202102 },
"headers": ["utility"],
}, {
"name": "__cpp_lib_transformation_trait_aliases",
@@ -771,7 +771,7 @@ def add_version_header(tc):
"headers": ["unordered_map"],
}, {
"name": "__cpp_lib_unreachable",
- "values": { "c++2b": 202202 },
+ "values": { "c++23": 202202 },
"headers": ["utility"],
}, {
"name": "__cpp_lib_unwrap_ref",
@@ -819,7 +819,7 @@ def add_version_header(tc):
}
def get_std_dialects():
- std_dialects = ['c++14', 'c++17', 'c++20', 'c++2b']
+ std_dialects = ['c++14', 'c++17', 'c++20', 'c++23']
return list(std_dialects)
def get_first_std(d):
@@ -904,7 +904,7 @@ def produce_macros_definitions():
macros_definitions = []
for std in get_std_dialects():
macros_definitions.append(
- macro_definition_template.format(std_number=get_std_number(std).replace('2b', '23'),
+ macro_definition_template.format(std_number=get_std_number(std),
macro_definition=produce_macros_definition_for_std(std)))
return '\n\n'.join(macros_definitions)
@@ -1073,7 +1073,6 @@ def generate_std_tests(test_list):
#endif // TEST_STD_VER > {penultimate_std_number}"""
std_dialects = get_std_dialects()
- assert not get_std_number(std_dialects[-1]).isnumeric()
other_std_tests = []
for std in std_dialects[:-1]:
diff --git a/libcxx/utils/generate_header_inclusion_tests.py b/libcxx/utils/generate_header_inclusion_tests.py
index e96551d1f7ad3..729e3e0bda70b 100755
--- a/libcxx/utils/generate_header_inclusion_tests.py
+++ b/libcxx/utils/generate_header_inclusion_tests.py
@@ -127,7 +127,7 @@ def get_unsupported_line(includee):
"14": ['UNSUPPORTED: c++03, c++11'],
"17": ['UNSUPPORTED: c++03, c++11, c++14'],
"20": ['UNSUPPORTED: c++03, c++11, c++14, c++17'],
- "2b": ['UNSUPPORTED: c++03, c++11, c++14, c++17, c++20'],
+ "23": ['UNSUPPORTED: c++03, c++11, c++14, c++17, c++20'],
}[v]
diff --git a/libcxx/utils/libcxx/test/params.py b/libcxx/utils/libcxx/test/params.py
index 4e7e37e348cbe..a1d66fcf8b091 100644
--- a/libcxx/utils/libcxx/test/params.py
+++ b/libcxx/utils/libcxx/test/params.py
@@ -54,14 +54,18 @@
'-Wno-unused-local-typedef',
]
-_allStandards = ['c++03', 'c++11', 'c++14', 'c++17', 'c++20', 'c++2b']
+_allStandards = ['c++03', 'c++11', 'c++14', 'c++17', 'c++20', 'c++23']
def getStdFlag(cfg, std):
fallbacks = {
'c++11': 'c++0x',
'c++14': 'c++1y',
'c++17': 'c++1z',
'c++20': 'c++2a',
+ 'c++23': 'c++2b',
}
+ # TODO LLVM 17 Remove this clang-tidy-16 work-around
+ if std == 'c++23':
+ std = 'c++2b'
if hasCompileFlag(cfg, '-std='+std):
return '-std='+std
if std in fallbacks and hasCompileFlag(cfg, '-std='+fallbacks[std]):
More information about the libcxx-commits
mailing list