Nenhum diagnóstico do compilador quando o identificador em uma captura simples aparece como o ID do declarador de um parâmetro

A seção sobre lambda captura ([expr.prim.lambda.capture] / 5) afirma que

Se um identificador em uma captura simples aparecer como o ID do declarador de um parâmetro da cláusula parameter-statement-statement do lambda-declarator, o programa está mal formad

Considere o seguinte exemplo:

#include <iostream>

int main ()
{
    auto foo = 1234;
    auto bar = [foo](int foo) { std::cout << foo << '\n'; };
    bar(4321);     
}

versão mais recente do GCC (8.2.0 - lançada em 26 de julho de 2018) não tem diagnóstico para isso. Nem a versão mais recente do Clang (7.0.0 - lançada em 19 de setembro de 2018

Deve haver um diagnóstico (erro / aviso) desses compiladores (conforme mencionado na referência) ao longo das linhas de:

// parameter and simple-capture have the same name

Godbolt DemoAqu

questionAnswers(1)

yourAnswerToTheQuestion