Lambda constexpr работает в msvc, но не в gccC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Гость
 Lambda constexpr работает в msvc, но не в gcc

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


Я написал следующую программу, которая компилируется с помощью msvc, но не с помощью gcc и clang. Демо

int main() { constexpr auto func = []()constexpr { return 1; }; auto i = []{return func();}; } Я хочу знать, какой компилятор находится здесь?

GCC говорит:
: В лямбда-функции: :3:28: ошибка: «func» не захвачен 3 | auto i = []{return func();}; | ~~~~^~ :3:15: примечание: лямбда не имеет значения по умолчанию 3 | auto i = []{return func();}; | ^ :2:20: примечание: здесь объявлено 'constexpr const main():: func' 2 | constexpr auto func = []()constexpr { return 1; }; |
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

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

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