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

--- Comment #1 from Lewis Baker <lewissbaker.opensource at gmail dot com> ---
Note there is also some different behaviour if we change the example slightly
by removing awaitable::~awaitable() and leaving the awaitable type with a
trivial destructor.

See https://godbolt.org/z/ff5Uvy

In this case, instead of the resource destructor being called before the
coroutine suspends, the resource destructor is never called.

ie. observed output becomes:
```
resource()
awaitable::await_suspend()
awaitable::await_resume()
```

Reply via email to