This got broken with r12-3529 and fixed with r12-5255.
2022-03-22 Jakub Jelinek <jakub@redhat.com>
PR c++/102489
* g++.dg/coroutines/pr102489.C: New test.
--- /dev/null
+// PR c++/102489
+// { dg-do compile }
+// { dg-additional-options "-O" }
+
+#include <coroutine>
+
+struct footask {
+ struct promise_type {
+ std::suspend_never initial_suspend();
+ std::suspend_never final_suspend() noexcept;
+ void unhandled_exception();
+ void get_return_object();
+ };
+ std::suspend_always foo;
+ footask taskfun() { co_await foo; }
+};