Вложенные лямбда-ошибки в 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

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