template void f(int, T (*)() = 0); void g() { typedef int A[2]; f(0); // { dg-error "" } typedef void F(); f(0); // { dg-error "" } }