Здравствуйте, sergii.p, Вы писали:
SP>Чтобы избежать этого нужен std::launder.
Это понятно, std::launder используется.
SP>Но если его вызывать при каждом чтении, то компилытор уже ничего оптимизировать не будет, что тоже не очень хорошо.
Придется мириться, т.к. нет возможности сохранять где-либо возвращенный placement new указатель или даже хранить где-то признак того, что значение создано и может использоваться напрямую.