1// { dg-do assemble  }
2
3template <class T>
4void f(T) {} // { dg-error "previously" }
5
6template <class U>
7struct S {
8  template <class T>
9  friend void f(T) {} // { dg-error "redefinition" }
10};
11
12S<int> si;
13