GCC принимает `constexpr struct {} s;`, но Clang отклоняет его. Кто прав? ⇐ C++
GCC принимает `constexpr struct {} s;`, но Clang отклоняет его. Кто прав?
Следующий код отлично компилируется с GCC:
constexpr struct {} s; Но Clang отклоняет его со следующей ошибкой:
ошибка: инициализация по умолчанию объекта константного типа «const struct (anonymous struct at…)» без предоставленного пользователем конструктора по умолчанию
Я протестировал все версии GCC и Clang, которые смог найти на https://gcc.godbolt.org/. Каждая версия GCC принимает код, а каждая версия Clang его отклоняет.
Интересно, какой компилятор прав в данном случае?
Что говорит об этом стандарт?
Следующий код отлично компилируется с GCC:
constexpr struct {} s; Но Clang отклоняет его со следующей ошибкой:
ошибка: инициализация по умолчанию объекта константного типа «const struct (anonymous struct at…)» без предоставленного пользователем конструктора по умолчанию
Я протестировал все версии GCC и Clang, которые смог найти на https://gcc.godbolt.org/. Каждая версия GCC принимает код, а каждая версия Clang его отклоняет.
Интересно, какой компилятор прав в данном случае?
Что говорит об этом стандарт?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
MSVC отклоняет программу с вызовом функции-члена, в то время как gcc и clang принимают
Anonymous » » в форуме C++ - 0 Ответы
- 14 Просмотры
-
Последнее сообщение Anonymous
-
-
-
MSVC отклоняет программу с вызовом функции-члена, в то время как gcc и clang принимают
Anonymous » » в форуме C++ - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-