// { dg-additional-options " -O1 " } | |
#include <coroutine> | |
struct coroutine { | |
struct promise_type { | |
coroutine get_return_object() { return {}; } | |
void return_void() {} | |
void unhandled_exception() {} | |
auto initial_suspend() noexcept { return std::suspend_never{}; } | |
auto final_suspend() noexcept { return std::suspend_never{}; } | |
}; | |
}; | |
struct data { | |
constexpr int get() { return 5; } | |
}; | |
struct test { | |
data _data; | |
void foo() { | |
[this]() -> coroutine { | |
_data.get(); | |
co_return; | |
}; | |
} | |
}; | |
int main() {} |