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

// This testcase won't fail if class ::foo is forward-declared in the
// global namespace, nor if class bar is not a template class.

template <typename T = void>
class bar {
public:
  friend class foo; // this is not bar::foo, it forward-declares ::foo
  class foo {};
  bar() { foo(); } // but this should refer to bar::foo
};

bar<> baz;