Вложенные лямбда-ошибки в msvc с помеченной структурированной привязкой?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Вложенные лямбда-ошибки в msvc с помеченной структурированной привязкой?

Сообщение Anonymous »

По какой-то причине в msvc возникают следующие ошибки кода (с /std:c++latest):

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

#include 
#include 
#include 

std::tuple f() {
return { "4", "5", "6", "7" };
}

int main()
{
auto cbf = []() {
static auto cb = []() {
bug:
auto [a, b, c, d] = f();
c = d;
};
};
}
Это происходит, когда есть такие вложенные лямбды (если вы удалите первый cbf, он компилируется нормально), и я считаю, что другой ингредиент имеет объявление структурированной привязки.
Также кажется, что должна также присутствовать метка ().
Ошибки:

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

'd' cannot be implicitly captured because no default capture mode has been specified
'c' cannot be implicitly captured because no default capture mode has been specified
Кроме того, я пытался сообщить об ошибках на сайте MSVC, но это показало мне, что я НЕ АВТОРИЗОВАН, поэтому вместо этого пишу здесь.

Подробнее здесь: https://stackoverflow.com/questions/797 ... ed-binding
Ответить

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

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

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

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

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