1// { dg-do link  }
2// { dg-options "-ansi -pedantic-errors -w" }
3// GROUPS passed templates
4
5template <class U>
6struct S
7{
8  template <class T>
9  void foo(T t);
10
11  template <class T>
12  void bar(T t) { this->template foo<U>(3.74); }
13};
14
15template <>
16template <>
17void S<int>::foo(int) { }
18
19int main()
20{
21  S<int> s;
22  s.bar(3);
23}
24