// PR c++/16929 template class A { int x; }; template class B { protected: A a; // { dg-error "" } void f(const A * a1 = &a); // { dg-error "this location" } void g(void); }; template void B::g(void) { f(); // { dg-error "default argument" } } template class B;