Message ID | D44308E2-AFF8-4611-A987-A02E57759B3B@sandoe.co.uk |
---|---|
State | New |
Headers | show |
Series | None | expand |
Iain Sandoe <iain@sandoe.co.uk> writes: > Ian Lance Taylor <ian@airs.com> wrote: > >> Iain Sandoe <iain@sandoe.co.uk> writes: > >>> 2020-01-09 Iain Sandoe <iain@sandoe.co.uk> >>> >>> * cp-demangle.c (cplus_demangle_operators): Add the co_await >>> operator. >> >> Please add something to libiberty/testsuite/demangle-expected. Thanks. > > done***, > OK now? > thanks > Iain > > *** it seems that the demangle test is broken for x86_64-darwin & linux on trunk > anyway, (I ‘fixed’ it locally to test my patch below; will try to figure out if that fix is > correct and post it if so) - however, that’s unconnected with the coroutines stuff. > > ====== > > revised: > ---------- > > The coroutines implementation introduces a new operator with a > mangling of 'aw'. This patch adds that to libiberty's demangler. > > libiberty/ChangeLog: > > 2020-01-11 Iain Sandoe <iain@sandoe.co.uk> > > * cp-demangle.c (cplus_demangle_operators): Add the co_await > operator. > * testsuite/demangle-expected: Append a test for the co_await > operator mangling. This is OK. Thanks. Ian
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index 3639bfbfd4..fc55b7fae1 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -1802,6 +1802,7 @@ const struct demangle_operator_info cplus_demangle_operators[] = { "ad", NL ("&"), 1 }, { "an", NL ("&"), 2 }, { "at", NL ("alignof "), 1 }, + { "aw", NL ("co_await "), 1 }, { "az", NL ("alignof "), 1 }, { "cc", NL ("const_cast"), 2 }, { "cl", NL ("()"), 2 }, diff --git a/libiberty/testsuite/demangle-expected b/libiberty/testsuite/demangle-expected index 5878d96dee..e6a75601e0 100644 --- a/libiberty/testsuite/demangle-expected +++ b/libiberty/testsuite/demangle-expected @@ -1450,3 +1450,7 @@ Foo<int>()::{lambda(auto:1)#1}::operator()<char>(char) const::X::fn _Z3fooILPv0EEvPN9enable_ifIXeqT_LDnEEvE4typeE void foo<(void*)0>(enable_if<((void*)0)==((decltype(nullptr))), void>::type*) + +_ZNK5coro15emptyawEv +coro1::empty::operator co_await() const +