[libcxx-commits] [libcxx] [libc++][NFC] Remove _LIBCPP_DISABLE_EXTENSION_WARNINGS (PR #133693)

Nikolas Klauser via libcxx-commits libcxx-commits at lists.llvm.org
Mon Mar 31 03:05:49 PDT 2025


https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/133693

We only use `_LIBCPP_DISABLE_EXTENSION_WARNINGS` in a single place while we use extensions all over the place. The warnings are already disabled, since libc++'s headers are system headers, so this shouldn't be in any way observable by users.


>From a3b855df4ddd17f648172a83499736ec89e26520 Mon Sep 17 00:00:00 2001
From: Nikolas Klauser <nikolasklauser at berlin.de>
Date: Mon, 31 Mar 2025 12:03:35 +0200
Subject: [PATCH] [libc++][NFC] Remove _LIBCPP_DISABLE_EXTENSION_WARNINGS

---
 libcxx/.clang-format                  | 1 -
 libcxx/include/__atomic/support/c11.h | 2 +-
 libcxx/include/__config               | 2 --
 3 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/libcxx/.clang-format b/libcxx/.clang-format
index f548119652c19..a6154c7c4a2bc 100644
--- a/libcxx/.clang-format
+++ b/libcxx/.clang-format
@@ -30,7 +30,6 @@ AttributeMacros: [
                   '_LIBCPP_DEPRECATED_IN_CXX20',
                   '_LIBCPP_DEPRECATED_IN_CXX23',
                   '_LIBCPP_DEPRECATED',
-                  '_LIBCPP_DISABLE_EXTENSION_WARNING',
                   '_LIBCPP_EXCLUDE_FROM_EXPLICIT_INSTANTIATION',
                   '_LIBCPP_EXPORTED_FROM_ABI',
                   '_LIBCPP_EXTERN_TEMPLATE_TYPE_VIS',
diff --git a/libcxx/include/__atomic/support/c11.h b/libcxx/include/__atomic/support/c11.h
index 177a075be4073..1ad299882a12a 100644
--- a/libcxx/include/__atomic/support/c11.h
+++ b/libcxx/include/__atomic/support/c11.h
@@ -35,7 +35,7 @@ struct __cxx_atomic_base_impl {
   }
 #endif // _LIBCPP_CXX03_LANG
   _LIBCPP_CONSTEXPR explicit __cxx_atomic_base_impl(_Tp __value) _NOEXCEPT : __a_value(__value) {}
-  _LIBCPP_DISABLE_EXTENSION_WARNING _Atomic(_Tp) __a_value;
+  _Atomic(_Tp) __a_value;
 };
 
 #define __cxx_atomic_is_lock_free(__s) __c11_atomic_is_lock_free(__s)
diff --git a/libcxx/include/__config b/libcxx/include/__config
index ea51d30dcda99..35e62d0a19e85 100644
--- a/libcxx/include/__config
+++ b/libcxx/include/__config
@@ -352,8 +352,6 @@ typedef __char32_t char32_t;
 
 #  define _LIBCPP_ALWAYS_INLINE __attribute__((__always_inline__))
 
-#  define _LIBCPP_DISABLE_EXTENSION_WARNING __extension__
-
 #  if defined(_LIBCPP_OBJECT_FORMAT_COFF)
 
 #    ifdef _DLL



More information about the libcxx-commits mailing list