[libcxx-commits] [libcxx] 1d411f2 - [libc++][NFC] Replace a few "namespace std" with the correct macro (#140510)

via libcxx-commits libcxx-commits at lists.llvm.org
Fri May 23 13:56:27 PDT 2025


Author: Nikolas Klauser
Date: 2025-05-23T22:56:24+02:00
New Revision: 1d411f27c769a32cb22ce50b9dc4421e34fd40dd

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

LOG: [libc++][NFC] Replace a few "namespace std" with the correct macro (#140510)

We've added a new macro for the unversioned `namespace std` cases in
#133009, but it seems we've missed a few places. This fixes the places I
just found.

Added: 
    

Modified: 
    libcxx/include/initializer_list
    libcxx/include/optional
    libcxx/include/stdexcept
    libcxx/include/typeinfo

Removed: 
    


################################################################################
diff  --git a/libcxx/include/initializer_list b/libcxx/include/initializer_list
index 00e0d4ea4a2df..b66b734eb57f9 100644
--- a/libcxx/include/initializer_list
+++ b/libcxx/include/initializer_list
@@ -53,11 +53,10 @@ template<class E> const E* end(initializer_list<E> il) noexcept; // constexpr in
 #    pragma GCC system_header
 #  endif
 
-namespace std // purposefully not versioned
-{
-
 #  ifndef _LIBCPP_CXX03_LANG
 
+_LIBCPP_BEGIN_UNVERSIONED_NAMESPACE_STD
+
 template <class _Ep>
 class _LIBCPP_NO_SPECIALIZATIONS initializer_list {
   const _Ep* __begin_;
@@ -95,9 +94,9 @@ inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 const _Ep* end(initia
   return __il.end();
 }
 
-#  endif // !defined(_LIBCPP_CXX03_LANG)
+_LIBCPP_END_UNVERSIONED_NAMESPACE_STD
 
-} // namespace std
+#  endif // !defined(_LIBCPP_CXX03_LANG)
 
 #  if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
 #    include <cstddef>

diff  --git a/libcxx/include/optional b/libcxx/include/optional
index 2153efb2ab899..b60ddb91ce5d6 100644
--- a/libcxx/include/optional
+++ b/libcxx/include/optional
@@ -244,8 +244,8 @@ namespace std {
 _LIBCPP_PUSH_MACROS
 #  include <__undef_macros>
 
-namespace std // purposefully not using versioning namespace
-{
+_LIBCPP_BEGIN_UNVERSIONED_NAMESPACE_STD
+_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
 
 class _LIBCPP_EXPORTED_FROM_ABI _LIBCPP_AVAILABILITY_BAD_OPTIONAL_ACCESS bad_optional_access : public exception {
 public:
@@ -257,7 +257,8 @@ public:
   const char* what() const _NOEXCEPT override;
 };
 
-} // namespace std
+_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
+_LIBCPP_END_UNVERSIONED_NAMESPACE_STD
 
 #  if _LIBCPP_STD_VER >= 17
 

diff  --git a/libcxx/include/stdexcept b/libcxx/include/stdexcept
index 610b409132543..a2116c133ade3 100644
--- a/libcxx/include/stdexcept
+++ b/libcxx/include/stdexcept
@@ -73,8 +73,8 @@ public:
 
 _LIBCPP_END_NAMESPACE_STD
 
-namespace std // purposefully not using versioning namespace
-{
+_LIBCPP_BEGIN_UNVERSIONED_NAMESPACE_STD
+_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
 
 class _LIBCPP_EXPORTED_FROM_ABI logic_error : public exception {
 #  ifndef _LIBCPP_ABI_VCRUNTIME
@@ -207,7 +207,8 @@ public:
 #  endif
 };
 
-} // namespace std
+_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
+_LIBCPP_END_UNVERSIONED_NAMESPACE_STD
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 

diff  --git a/libcxx/include/typeinfo b/libcxx/include/typeinfo
index 24aaabf0a87df..1f056d2e66bde 100644
--- a/libcxx/include/typeinfo
+++ b/libcxx/include/typeinfo
@@ -76,8 +76,8 @@ public:
 #    include <vcruntime_typeinfo.h>
 #  else
 
-namespace std // purposefully not using versioning namespace
-{
+_LIBCPP_BEGIN_UNVERSIONED_NAMESPACE_STD
+_LIBCPP_BEGIN_EXPLICIT_ABI_ANNOTATIONS
 
 #    if defined(_LIBCPP_ABI_MICROSOFT)
 
@@ -348,7 +348,8 @@ public:
   const char* what() const _NOEXCEPT override;
 };
 
-} // namespace std
+_LIBCPP_END_EXPLICIT_ABI_ANNOTATIONS
+_LIBCPP_END_UNVERSIONED_NAMESPACE_STD
 
 #  endif // defined(_LIBCPP_ABI_VCRUNTIME)
 


        


More information about the libcxx-commits mailing list