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

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain D Sandoe <ia...@gcc.gnu.org>:

https://gcc.gnu.org/g:8009c79b64b532d8a0966fe3c6d636369df6e35d

commit r12-4101-g8009c79b64b532d8a0966fe3c6d636369df6e35d
Author: John Eivind Helset <jehel...@gmail.com>
Date:   Sat May 22 01:53:22 2021 +0200

    coroutines: Fix ICE with an invalid await_suspend type [PR100673].

    The reported ICE occurs when an invalid (non-template) type is found
    as the return for an await_suspend.

    Fixed by amending build_co_await to ensure that await_suspend return-
    type is a template-instantiation before checking to see if it is a
    valid coroutine handle type.

    Signed-off-by: John Eivind Helset <jehel...@gmail.com>
    Signed-off-by: Iain Sandoe <i...@sandoe.co.uk>

            PR c++/100673

    gcc/cp/ChangeLog:

            * coroutines.cc (build_co_await): Guard against NULL
            await_suspend types.

    gcc/testsuite/ChangeLog:

            * g++.dg/coroutines/pr100673.C: New test.

Reply via email to