// { dg-do compile { target c++11 } } class X { template friend void f(X) { } template friend void g(X); // { dg-message "previously declared here" } template friend void h(X); // { dg-error "function template friend" } }; template void g(X) // { dg-error "default template argument" } { }