That has about the same issue: like std::move it doesn't really explain that the receiver decides.
std::offer
std::offer