[gcc/devel/c++-modules] libstdc++: Remove std::type_info::operator!= for C++20
Nathan Sidwell
nathan@gcc.gnu.org
Mon Feb 24 16:32:00 GMT 2020
https://gcc.gnu.org/g:20fa41e61fd2d2839ca47e0dfac6976c552ab648
commit 20fa41e61fd2d2839ca47e0dfac6976c552ab648
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Fri Feb 7 20:50:00 2020 +0000
libstdc++: Remove std::type_info::operator!= for C++20
This function can be synthesized by the compiler now.
* libsupc++/typeinfo (type_info::operator!=): Remove for C++20.
Diff:
---
libstdc++-v3/ChangeLog | 2 ++
libstdc++-v3/libsupc++/typeinfo | 3 +++
2 files changed, 5 insertions(+)
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index a80c608..0ad5ffe 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,7 @@
2020-02-20 Jonathan Wakely <jwakely@redhat.com>
+ * libsupc++/typeinfo (type_info::operator!=): Remove for C++20.
+
* include/std/thread (thread::id::operator<=>): Define for C++20.
* testsuite/30_threads/thread/id/70294.cc: Do not take addresses of
functions in namespace std.
diff --git a/libstdc++-v3/libsupc++/typeinfo b/libstdc++-v3/libsupc++/typeinfo
index 0f523d7..5a64e9f 100644
--- a/libstdc++-v3/libsupc++/typeinfo
+++ b/libstdc++-v3/libsupc++/typeinfo
@@ -133,8 +133,11 @@ namespace std
{ return __name == __arg.__name; }
#endif
#endif
+
+#if __cpp_impl_three_way_comparison < 201907L
bool operator!=(const type_info& __arg) const _GLIBCXX_NOEXCEPT
{ return !operator==(__arg); }
+#endif
#if __cplusplus >= 201103L
size_t hash_code() const noexcept
More information about the Libstdc++-cvs
mailing list