[Bug c++/99710] coroutines: co_yield and co_await should only be allowed in suspension context
cvs-commit at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sun Oct 3 19:54:06 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99710
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain D Sandoe <iains@gcc.gnu.org>:
https://gcc.gnu.org/g:650beb110538097b9c3e8600149b333a83e7e836
commit r12-4102-g650beb110538097b9c3e8600149b333a83e7e836
Author: Iain Sandoe <iain@sandoe.co.uk>
Date: Sat Oct 2 14:43:39 2021 +0100
coroutines: Await expressions are not allowed in handlers [PR 99710].
C++20 [expr.await] / 2
An await-expression shall appear only in a potentially-evaluated expression
within the compound-statement of a function-body outside of a handler.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
PR c++/99710
gcc/cp/ChangeLog:
* coroutines.cc (await_statement_walker): Report an error if
an await expression is found in a handler body.
gcc/testsuite/ChangeLog:
* g++.dg/coroutines/pr99710.C: New test.
More information about the Gcc-bugs
mailing list