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

--- Comment #8 from GCC 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:977fadd69776e2a8a6daca43e1c898bc4f87154d

commit r16-969-g977fadd69776e2a8a6daca43e1c898bc4f87154d
Author: Iain Sandoe <i...@sandoe.co.uk>
Date:   Thu May 29 15:45:29 2025 +0100

    c++, coroutines: Make a check more specific [PR109283].

    The check was intended to assert that we had visited contained
    ternary expressions with embedded co_awaits, but had been made
    too general - and therefore was ICEing on code that was actually
    OK.  Fixed by checking specifically that no co_awaits embedded.

            PR c++/109283

    gcc/cp/ChangeLog:

            * coroutines.cc (find_any_await): Only save the statement
            pointer if the caller passes a place for it.
            (flatten_await_stmt): When checking that ternary expressions
            have been handled, also check that they contain a co_await.

    gcc/testsuite/ChangeLog:

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

    Signed-off-by: Iain Sandoe <i...@sandoe.co.uk>

Reply via email to