summaryrefslogtreecommitdiff
path: root/libiberty
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2020-04-27 20:59:25 +0200
committerJakub Jelinek <jakub@redhat.com>2020-04-27 20:59:25 +0200
commit76458c912b0cdda59e094fa64b98aea9ffee214a (patch)
treed496865c46cfaeed6bb9beb41586e4fbb5a6b431 /libiberty
parent562bfb1f0e64aa6398bdf4baa0a8b205f4b617ab (diff)
demangler: Handle <=> operator in the demangler [PR94797]
The demangler didn't handle spaceship operator. 2020-04-27 Jakub Jelinek <jakub@redhat.com> PR demangler/94797 * cp-demangle.c (cplus_demangle_operators): Add ss <=> operator. * testsuite/demangle-expected: Add operator<=> test.
Diffstat (limited to 'libiberty')
-rw-r--r--libiberty/ChangeLog6
-rw-r--r--libiberty/cp-demangle.c1
-rw-r--r--libiberty/testsuite/demangle-expected3
3 files changed, 10 insertions, 0 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index 0c26d455caf..3b61aaca93c 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,9 @@
+2020-04-27 Jakub Jelinek <jakub@redhat.com>
+
+ PR demangler/94797
+ * cp-demangle.c (cplus_demangle_operators): Add ss <=> operator.
+ * testsuite/demangle-expected: Add operator<=> test.
+
2020-04-25 H.J. Lu <hongjiu.lu@intel.com>
PR bootstrap/94739
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index fc55b7fae1f..cbfb2f937ca 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -1860,6 +1860,7 @@ const struct demangle_operator_info cplus_demangle_operators[] =
{ "sP", NL ("sizeof..."), 1 },
{ "sZ", NL ("sizeof..."), 1 },
{ "sc", NL ("static_cast"), 2 },
+ { "ss", NL ("<=>"), 2 },
{ "st", NL ("sizeof "), 1 },
{ "sz", NL ("sizeof "), 1 },
{ "tr", NL ("throw"), 0 },
diff --git a/libiberty/testsuite/demangle-expected b/libiberty/testsuite/demangle-expected
index ccadf84e608..d8e50951f84 100644
--- a/libiberty/testsuite/demangle-expected
+++ b/libiberty/testsuite/demangle-expected
@@ -1453,3 +1453,6 @@ void foo<(void*)0>(enable_if<((void*)0)==(decltype(nullptr)), void>::type*)
_ZNK5coro15emptyawEv
coro1::empty::operator co_await() const
+
+_ZNK3FoossERKS_
+Foo::operator<=>(Foo const&) const