diff --git a/include/continuable/detail/expected.hpp b/include/continuable/detail/expected.hpp index 658f498..9c624dd 100644 --- a/include/continuable/detail/expected.hpp +++ b/include/continuable/detail/expected.hpp @@ -194,6 +194,12 @@ public: expected& operator=(expected const&) = default; expected& operator=(expected&&) = default; + ~expected() noexcept( + std::is_nothrow_destructible::value&& + std::is_nothrow_destructible::value) { + weak_destroy(); + } + explicit expected(T value) // : expected(std::move(value), detail::slot_t::value) { }