summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/access9.C
blob: b24c93f8d5e3789e28cd8c99daa2c8c836e5b376 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Copyright (C) 2003 Free Software Foundation
// Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
// { dg-do compile }

// Template instantiate during deferred access check

template <void (*)(int)> struct C {
  typedef int Y;
};

template <class T> void f(typename T::X) {
}

class A {
  typedef int X;
  template <class T> friend void f(typename T::X);
};

C<&f<A> >::Y g(int);