1// { dg-do assemble } 2 3template <class T> 4struct S1 5{ 6 template <class U> 7 struct S2 {}; 8 9 template <class X, class Y, class Z> 10 void f(X, Y, Z) 11 { 12 S2<Z> s2z; 13 } 14 15 template <class X, class Z> 16 void g(X, Z) 17 { 18 S2<Z> s2z; 19 } 20}; 21 22 23void h() 24{ 25 S1<int> si; 26 si.g(3, 4); 27} 28