1// { dg-do run  }
2extern "C" void abort();
3
4template <class T>
5struct S
6{
7  template <class U>
8  int f(U u);
9};
10
11template <>
12template <>
13int S<char>::f(int i) { return 1; }
14
15int main()
16{
17  S<char> sc;
18
19  if (sc.f(3) != 1)
20    abort();
21}
22