// { dg-do assemble } template struct S1 {}; template void f(T); template struct S2 { template void f >(T) {} // { dg-error "" } bad specialization. }; template struct S3 { friend class S2; };