Я изучаю C++ по книгам, перечисленным здесь. Я написал следующий пример (по чисто академическим причинам), который компилируется с помощью GCC, но не с Clang и MSVC. Демо.
struct C {
static bool f() noexcept(!noexcept(C::f()))
{
return true;
}
};
Как мы видим, приведенный выше пример компилируется с помощью gcc, но не с msvc и clang.
Итак, мой вопрос > какой компилятор находится здесь (если есть).
GCC компилирует это.
MSVC говорит:
(2): fatal error C1202: recursive type or function dependency context too complex
Кланг говорит:
:2:40: error: exception specification is not available until end of class definition
static bool f() noexcept(!noexcept(C::f()))
Подробнее здесь: https://stackoverflow.com/questions/740 ... g-and-msvc
Рекурсивное использование оператора noException компилируется в gcc, но не в clang и msvc. ⇐ C++
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Почему clang несовместим с noException(++it) и noException(*it) для контейнеров?
Anonymous » » в форуме C++ - 0 Ответы
- 8 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Почему clang несовместим с noException(++it) и noException(*it) для контейнеров?
Anonymous » » в форуме C++ - 0 Ответы
- 17 Просмотры
-
Последнее сообщение Anonymous
-