Я бы ожидал, что это статическое утверждение будет срабатывать:
#include <type_traits>
#include <memory>
int main() {
static_assert(std::is_copy_constructible<std::unique_ptr<int>>::value, "UPtr has copy constructor?");
}
Но это не так.
Скомпилировано с использованием MSVC12:
Microsoft (R) C/С++ Оптимизация компилятора Версия 18.00.31101 для x64