La captura implícita de Lambda falla con la variable declarada desde el enlace estructurado

Con el siguiente código, obtengo un error de compilaciónC2065 'a': undeclared identifier (usando Visual Studio 2017):

[] {
    auto [a, b] = [] {return std::make_tuple(1, 2); }();
    auto r = [&] {return a; }(); //error C2065
}();

Sin embargo, el siguiente código compila:

[] {
    int a, b;
    std::tie(a, b) = [] {return std::make_tuple(1, 2); }();
    auto r = [&] {return a; }();
}();

Pensé que las dos muestras eran equivalentes. ¿Es un error del compilador o me falta algo?

Respuestas a la pregunta(2)

Su respuesta a la pregunta