[Bug c++/93642] [Coroutines] internal compiler error: in expand_expr_addr_expr_1, at expr.c:8070 using co_return
egor_suvorov at mail dot ru
gcc-bugzilla@gcc.gnu.org
Mon Apr 6 18:05:33 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93642
Egor Suvorov <egor_suvorov at mail dot ru> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |egor_suvorov at mail dot ru
--- Comment #3 from Egor Suvorov <egor_suvorov at mail dot ru> ---
It looks like GCC chokes if it has to call unusual constructor of `promise`.
E.g. if `get_return_object()` returns `int` and there is `promise(int)`
constructor (with no `coroutine_handle` in sight), same error occurs.
However, if I return `promise` from `get_return_object()` and provide
`promise(const promise&) {}`, GCC does not crash.
More information about the Gcc-bugs
mailing list