On Friday, October 24, 2025, Thiago Macieira via Std-Proposals <std-proposals@lists.isocpp.org> wrote:

I think that's an even more important question: how often do we need this
replacement solution whereby the previously-stored object is present if the
new one throws on construction?


Sometimes we at the very least want to be left with a safe-to-destroy object if the construction fails. Something like:

    p->~T();
    try
    {
        ::new(p) T(5, 6.22); 
    }
    catch(...)
    {
        std::construct_moved_from_at<T>(p);
    }

A few months back on this mailing list, somebody was talking about introducing "std::moved_from" and I think it's a good idea.