Le code suivant se compile proprement avec GCC :
void func(int arg1, decltype(arg1) arg2)
{
(void)arg2;
}
int main(){}
J'ai utilisé cette commande pour compiler :
g++ -std=c++14 test.cpp -o test -pedantic-errors -Wall -Wextra
Mais une telle utilisation d'un paramètre au milieu de la déclaration de la fonction semble bizarre. Est-ce réellement valable dans le C++ standard, ou est-ce une extension de GCC ?