Почему Кланг думает, что std :: unicke_ptr не является стандартным Layout?C++

Программы на C++. Форум разработчиков
Anonymous
Почему Кланг думает, что std :: unicke_ptr не является стандартным Layout?

Сообщение Anonymous »

У меня есть следующее утверждение: < /p>

Код: Выделить всё

#include 
#include 

static_assert(std::is_standard_layout_v);
Это утверждение проходит на GCC, но не удается для Clang (https://godbolt.org/z/8bwdoxsp9), оба с использованием libstdc ++, что предполагает, что может быть некоторое условное компиляцию или компилятор. Ошибка, которая вызывает это расхождение. T*, который по существу гарантирует, что это стандартный тип класса макета.


Подробнее здесь: https://stackoverflow.com/questions/793 ... ard-layout

Вернуться в «C++»