1// { dg-do assemble  }
2
3template <class T>
4void f(T);
5
6class C
7{
8  friend void f<>(double);
9
10  int i; // { dg-error "" } private
11};
12
13
14template <class T>
15void f(T)
16{
17  C c;
18  c.i = 3; // { dg-error "" } f<double> is a friend, this is f<int>.
19}
20
21
22int main()
23{
24  f(7);
25}
26