[libcxx-commits] [libcxx] [libc++] Implement _LIBCPP_SUPPRESS_DEPRECATED macros in terms of _LIBCPP_DIAGNOSTIC macros (PR #143857)
via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Jul 16 02:24:49 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-libcxx
Author: Nikolas Klauser (philnik777)
<details>
<summary>Changes</summary>
This makes the code a bit more consistent, since we use the `_LIBCPP_DIAGNOSTIC` macros everywhere else.
---
Full diff: https://github.com/llvm/llvm-project/pull/143857.diff
1 Files Affected:
- (modified) libcxx/include/__config (+6-11)
``````````diff
diff --git a/libcxx/include/__config b/libcxx/include/__config
index 58ca9bab937e4..f2199764713b8 100644
--- a/libcxx/include/__config
+++ b/libcxx/include/__config
@@ -416,6 +416,12 @@ typedef __char32_t char32_t;
# define _LIBCPP_GCC_DIAGNOSTIC_IGNORED(str)
# endif
+// Macros to enter and leave a state where deprecation warnings are suppressed.
+# define _LIBCPP_SUPPRESS_DEPRECATED_PUSH \
+ _LIBCPP_DIAGNOSTIC_PUSH _LIBCPP_CLANG_DIAGNOSTIC_IGNORED("-Wdeprecated") \
+ _LIBCPP_GCC_DIAGNOSTIC_IGNORED("-Wdeprecated-declarations")
+# define _LIBCPP_SUPPRESS_DEPRECATED_POP _LIBCPP_DIAGNOSTIC_POP
+
# if _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_FAST
# define _LIBCPP_HARDENING_SIG f
# elif _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_EXTENSIVE
@@ -717,17 +723,6 @@ typedef __char32_t char32_t;
# define _LIBCPP_DEPRECATED_WITH_CHAR8_T
# endif
-// Macros to enter and leave a state where deprecation warnings are suppressed.
-# if defined(_LIBCPP_COMPILER_CLANG_BASED) || defined(_LIBCPP_COMPILER_GCC)
-# define _LIBCPP_SUPPRESS_DEPRECATED_PUSH \
- _Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wdeprecated\"") \
- _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
-# define _LIBCPP_SUPPRESS_DEPRECATED_POP _Pragma("GCC diagnostic pop")
-# else
-# define _LIBCPP_SUPPRESS_DEPRECATED_PUSH
-# define _LIBCPP_SUPPRESS_DEPRECATED_POP
-# endif
-
# if _LIBCPP_STD_VER <= 11
# define _LIBCPP_EXPLICIT_SINCE_CXX14
# else
``````````
</details>
https://github.com/llvm/llvm-project/pull/143857
More information about the libcxx-commits
mailing list