Требуется компиляция с помощью msvc, но отклоняется gccC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Гость
 Требуется компиляция с помощью msvc, но отклоняется gcc

Сообщение Гость »


Я написал следующую программу, которая использует require без круглых скобок. Программа компилируется с помощью msvc, но не с помощью gcc и clang. Я хочу знать, какой компилятор находится здесь. Демо

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

#include 

template requires !std::is_enum_v
void foo(T)
{

}
int main()
{
foo(4); //msvc compile but not gcc and clang
}
GCC говорит:

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

:3:31: error: expression must be enclosed in parentheses
3 | template requires !std::is_enum_v
|                               ^~~~~~~~~~~~~~~~~~
|                               (                 )
Compiler returned: 1
Note that I am not looking for a workaround as I know that I can solve this by writing parentheses around !std::is_enum_v. I want to know which compiler is right here for academic purposes.


Источник: https://stackoverflow.com/questions/781 ... ted-by-gcc
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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