diff --git a/include/cppcoro/recursive_generator.hpp b/include/cppcoro/recursive_generator.hpp index 9f76dcb..30160eb 100644 --- a/include/cppcoro/recursive_generator.hpp +++ b/include/cppcoro/recursive_generator.hpp @@ -28,9 +28,12 @@ namespace cppcoro , m_parentOrLeaf(this) {} - promise_type& get_return_object() noexcept + promise_type(const promise_type&) = delete; + promise_type(promise_type&&) = delete; + + auto get_return_object() noexcept { - return *this; + return recursive_generator{ *this }; } std::experimental::suspend_always initial_suspend() noexcept