On 4/27/20 2:28 PM, Jakub Jelinek wrote:
Hi!
The demangler didn't handle spaceship operator.
Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for
trunk?
OK.
2020-04-27 Jakub Jelinek <ja...@redhat.com>
PR demangler/94797
* cp-demangle.c (cplus_demangle_operators): Add ss <=> operator.
* testsuite/demangle-expected: Add operator<=> test.
--- libiberty/cp-demangle.c.jj 2020-01-18 13:47:09.549357226 +0100
+++ libiberty/cp-demangle.c 2020-04-27 18:36:18.309537085 +0200
@@ -1860,6 +1860,7 @@ const struct demangle_operator_info cplu
{ "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 },
--- libiberty/testsuite/demangle-expected.jj 2020-03-02 13:33:10.999493843
+0100
+++ libiberty/testsuite/demangle-expected 2020-04-27 18:37:06.245822623
+0200
@@ -1453,3 +1453,6 @@ void foo<(void*)0>(enable_if<((void*)0)=
_ZNK5coro15emptyawEv
coro1::empty::operator co_await() const
+
+_ZNK3FoossERKS_
+Foo::operator<=>(Foo const&) const
Jakub