(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
coroutines/
pr96517.C
// { 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() {}