[Bug c++/124738] New: [coroutines] ICE when using a conditional-expression in an await-expression

ddvamp007 at gmail dot com gcc-bugzilla@gcc.gnu.org
Tue Mar 31 18:22:49 GMT 2026


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

            Bug ID: 124738
           Summary: [coroutines] ICE when using a conditional-expression
                    in an await-expression
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ddvamp007 at gmail dot com
  Target Milestone: ---

https://godbolt.org/z/re8fM3o8E

#include <coroutine>

struct Tag {
  struct promise_type {
    Tag get_return_object() { return {}; }
    std::suspend_never initial_suspend() { return {}; }
    std::suspend_never final_suspend() noexcept { return {}; }
    void return_void() {}
    void unhandled_exception() {}
  };
};

Tag Coroutine() {
  co_await (true ? std::suspend_never{} : std::suspend_never{});
}

int main() {
  Coroutine();
}


More information about the Gcc-bugs mailing list