https://github.com/c-rhodes updated 
https://github.com/llvm/llvm-project/pull/176814

>From ad14a1cb6d2eedf60037d9b353090405807972ec Mon Sep 17 00:00:00 2001
From: "A. Jiang" <[email protected]>
Date: Tue, 20 Jan 2026 04:27:56 +0800
Subject: [PATCH] [libc++] Update `__cpp_lib_flat_set` to `202511L` according
 to P3567R2 (#176297)

The paper was already implemented in LLVM22 in cd13170aea2,
but the previous patch forgot to update `__cpp_lib_flat_set`.

Fixes #176232.

(cherry picked from commit bf6e9867c7193bf1d67814a681e707b771749614)
---
 libcxx/docs/FeatureTestMacroTable.rst                     | 2 +-
 libcxx/include/version                                    | 4 ++--
 .../flat_set.version.compile.pass.cpp                     | 8 ++++----
 .../version.version.compile.pass.cpp                      | 8 ++++----
 libcxx/utils/generate_feature_test_macro_components.py    | 2 +-
 5 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/libcxx/docs/FeatureTestMacroTable.rst 
b/libcxx/docs/FeatureTestMacroTable.rst
index 572e0cef6282f..d2b76cb96e866 100644
--- a/libcxx/docs/FeatureTestMacroTable.rst
+++ b/libcxx/docs/FeatureTestMacroTable.rst
@@ -336,7 +336,7 @@ Status
     ---------------------------------------------------------- 
-----------------
     ``__cpp_lib_flat_map``                                     ``202511L``
     ---------------------------------------------------------- 
-----------------
-    ``__cpp_lib_flat_set``                                     ``202207L``
+    ``__cpp_lib_flat_set``                                     ``202511L``
     ---------------------------------------------------------- 
-----------------
     ``__cpp_lib_format_ranges``                                ``202207L``
     ---------------------------------------------------------- 
-----------------
diff --git a/libcxx/include/version b/libcxx/include/version
index bdacfa1737798..7d77677a012ce 100644
--- a/libcxx/include/version
+++ b/libcxx/include/version
@@ -112,7 +112,7 @@ __cpp_lib_execution                                     
201902L <execution>
 __cpp_lib_expected                                      202211L <expected>
 __cpp_lib_filesystem                                    201703L <filesystem>
 __cpp_lib_flat_map                                      202511L <flat_map>
-__cpp_lib_flat_set                                      202207L <flat_set>
+__cpp_lib_flat_set                                      202511L <flat_set>
 __cpp_lib_format                                        202110L <format>
 __cpp_lib_format_path                                   202403L <filesystem>
 __cpp_lib_format_ranges                                 202207L <format>
@@ -498,7 +498,7 @@ __cpp_lib_void_t                                        
201411L <type_traits>
 # define __cpp_lib_containers_ranges                    202202L
 # define __cpp_lib_expected                             202211L
 # define __cpp_lib_flat_map                             202511L
-# define __cpp_lib_flat_set                             202207L
+# define __cpp_lib_flat_set                             202511L
 # define __cpp_lib_format_ranges                        202207L
 // # define __cpp_lib_formatters                           202302L
 # define __cpp_lib_forward_like                         202207L
diff --git 
a/libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
 
b/libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
index b29da9fdbe649..725e5107c8997 100644
--- 
a/libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
+++ 
b/libcxx/test/std/language.support/support.limits/support.limits.general/flat_set.version.compile.pass.cpp
@@ -67,8 +67,8 @@
 #  ifndef __cpp_lib_flat_set
 #    error "__cpp_lib_flat_set should be defined in c++23"
 #  endif
-#  if __cpp_lib_flat_set != 202207L
-#    error "__cpp_lib_flat_set should have the value 202207L in c++23"
+#  if __cpp_lib_flat_set != 202511L
+#    error "__cpp_lib_flat_set should have the value 202511L in c++23"
 #  endif
 
 #elif TEST_STD_VER > 23
@@ -83,8 +83,8 @@
 #  ifndef __cpp_lib_flat_set
 #    error "__cpp_lib_flat_set should be defined in c++26"
 #  endif
-#  if __cpp_lib_flat_set != 202207L
-#    error "__cpp_lib_flat_set should have the value 202207L in c++26"
+#  if __cpp_lib_flat_set != 202511L
+#    error "__cpp_lib_flat_set should have the value 202511L in c++26"
 #  endif
 
 #endif // TEST_STD_VER > 23
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 bb04b18395903..f442b22c6d752 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
@@ -5088,8 +5088,8 @@
 #  ifndef __cpp_lib_flat_set
 #    error "__cpp_lib_flat_set should be defined in c++23"
 #  endif
-#  if __cpp_lib_flat_set != 202207L
-#    error "__cpp_lib_flat_set should have the value 202207L in c++23"
+#  if __cpp_lib_flat_set != 202511L
+#    error "__cpp_lib_flat_set should have the value 202511L in c++23"
 #  endif
 
 #  if !defined(_LIBCPP_VERSION) || 
_LIBCPP_AVAILABILITY_HAS_TO_CHARS_FLOATING_POINT
@@ -6827,8 +6827,8 @@
 #  ifndef __cpp_lib_flat_set
 #    error "__cpp_lib_flat_set should be defined in c++26"
 #  endif
-#  if __cpp_lib_flat_set != 202207L
-#    error "__cpp_lib_flat_set should have the value 202207L in c++26"
+#  if __cpp_lib_flat_set != 202511L
+#    error "__cpp_lib_flat_set should have the value 202511L in c++26"
 #  endif
 
 #  if !defined(_LIBCPP_VERSION) || 
_LIBCPP_AVAILABILITY_HAS_TO_CHARS_FLOATING_POINT
diff --git a/libcxx/utils/generate_feature_test_macro_components.py 
b/libcxx/utils/generate_feature_test_macro_components.py
index a13c9e5347eed..88431c76a00f5 100644
--- a/libcxx/utils/generate_feature_test_macro_components.py
+++ b/libcxx/utils/generate_feature_test_macro_components.py
@@ -562,7 +562,7 @@ def add_version_header(tc):
         },
         {
             "name": "__cpp_lib_flat_set",
-            "values": {"c++23": 202207},
+            "values": {"c++23": 202511},
             "headers": ["flat_set"],
         },
         {

_______________________________________________
llvm-branch-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to