https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97561

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
This is intentional, see https://wg21.link/lwg3460 which is expected to be
voted into the draft in a few weeks. The inheritance requires unimplementable
and nonsensical behaviour.

You can still do this:

    std::coroutine_handle<task::promise_type> c;
    std::coroutine_handle<> c2 = c;

You just can't bind a coroutine_handle<> reference to a coroutine_handle<P>
directly.

Reply via email to