[PATCH 7/8] libstdc++: Define deleted wchar_t overloads unconditionally [PR 98725]
Jonathan Wakely
jwakely@redhat.com
Sat Oct 9 00:13:50 GMT 2021
We don't need to have <wchar.h> support in order to delete overloads
for inserting wide characters into narrow streams.
libstdc++-v3/ChangeLog:
PR libstdc++/98725
* include/std/ostream (operator<<(basic_ostream<char, Tr>&, wchar_t))
(operator<<(basic_ostream<char, Tr>&, const wchar_t*)): Always
define as deleted. Do not check _GLIBCXX_USE_WCHAR_T.
---
libstdc++-v3/include/std/ostream | 4 ----
1 file changed, 4 deletions(-)
diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream
index 7d39c5706d5..4d7b9b4ef0b 100644
--- a/libstdc++-v3/include/std/ostream
+++ b/libstdc++-v3/include/std/ostream
@@ -533,11 +533,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// The following deleted overloads prevent formatting character values as
// numeric values.
-#ifdef _GLIBCXX_USE_WCHAR_T
template<typename _Traits>
basic_ostream<char, _Traits>&
operator<<(basic_ostream<char, _Traits>&, wchar_t) = delete;
-#endif // _GLIBCXX_USE_WCHAR_T
#ifdef _GLIBCXX_USE_CHAR8_T
template<typename _Traits>
@@ -629,11 +627,9 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
// The following deleted overloads prevent formatting strings as
// pointer values.
-#ifdef _GLIBCXX_USE_WCHAR_T
template<typename _Traits>
basic_ostream<char, _Traits>&
operator<<(basic_ostream<char, _Traits>&, const wchar_t*) = delete;
-#endif // _GLIBCXX_USE_WCHAR_T
#ifdef _GLIBCXX_USE_CHAR8_T
template<typename _Traits>
--
2.31.1
More information about the Libstdc++
mailing list