[libcxx-commits] [libcxx] [libc++] Removes a Clang 16 Windows workaround. (PR #88560)
Mark de Wever via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Apr 18 08:55:55 PDT 2024
https://github.com/mordante updated https://github.com/llvm/llvm-project/pull/88560
>From e04ec40f4312277a41714008d29f13609bcbc5cf Mon Sep 17 00:00:00 2001
From: Mark de Wever <koraq at xs4all.nl>
Date: Fri, 12 Apr 2024 20:55:16 +0200
Subject: [PATCH] [libc++] Removes a Clang 16 Windows workaround.
---
libcxx/include/sstream | 24 ++++++++----------------
1 file changed, 8 insertions(+), 16 deletions(-)
diff --git a/libcxx/include/sstream b/libcxx/include/sstream
index 5873deb8318ecf..003c802b2647de 100644
--- a/libcxx/include/sstream
+++ b/libcxx/include/sstream
@@ -330,14 +330,6 @@ typedef basic_stringstream<wchar_t> wstringstream;
_LIBCPP_PUSH_MACROS
#include <__undef_macros>
-// TODO(LLVM-19): Remove this once we drop support for Clang 16,
-// which had this bug: https://github.com/llvm/llvm-project/issues/40363
-#ifdef _WIN32
-# define _LIBCPP_HIDE_FROM_ABI_SSTREAM _LIBCPP_ALWAYS_INLINE
-#else
-# define _LIBCPP_HIDE_FROM_ABI_SSTREAM _LIBCPP_HIDE_FROM_ABI
-#endif
-
_LIBCPP_BEGIN_NAMESPACE_STD
// Class template basic_stringbuf [stringbuf]
@@ -460,9 +452,9 @@ public:
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
string_type str() const;
#else
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() const& { return str(__str_.get_allocator()); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() const& { return str(__str_.get_allocator()); }
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() && {
+ _LIBCPP_HIDE_FROM_ABI string_type str() && {
const basic_string_view<_CharT, _Traits> __view = view();
typename string_type::size_type __pos = __view.empty() ? 0 : __view.data() - __str_.data();
// In C++23, this is just string_type(std::move(__str_), __pos, __view.size(), __str_.get_allocator());
@@ -948,9 +940,9 @@ public:
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
_LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
#else
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() const& { return __sb_.str(); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() && { return std::move(__sb_).str(); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
#endif
#if _LIBCPP_STD_VER >= 20
@@ -1085,9 +1077,9 @@ public:
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
_LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
#else
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() const& { return __sb_.str(); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() && { return std::move(__sb_).str(); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
#endif
#if _LIBCPP_STD_VER >= 20
@@ -1225,9 +1217,9 @@ public:
#if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
_LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
#else
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() const& { return __sb_.str(); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
- _LIBCPP_HIDE_FROM_ABI_SSTREAM string_type str() && { return std::move(__sb_).str(); }
+ _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
#endif
#if _LIBCPP_STD_VER >= 20
More information about the libcxx-commits
mailing list