summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/friend30.C
blob: ed492ed1895ffc6d3abf58c5060164c1d4af5bb6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// { dg-do assemble  }

template <class T, class U>
struct S {
  template <class X, class Y, class Z>
  friend X f(X, Y, Z);
};

template <class X, class Y, class Z>
X f(X x, Y, Z) {
  return x;
}

template char f(char, long, short);
template char* f(char*, long*, short*);
template class S<int, double>;
template class S<void*, double>;
template double* f(double*, long*, short*);