aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.jason/scoping6.C
blob: 161cc4762f745a20548f74d5a573d207a993a7e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Testcase for all uses of explicit global scope.
// Build don't link:

int a, B;

struct A { };
int operator+(A&, int);

struct B {
  struct C {
    static int a;
    static int f () { A a; return ::operator+ (a, ::a); } // gets bogus error
  };
};

int B::C::a = 0;

struct D : public ::B::C { };	// gets bogus error

void f ()
{
  int B;
  ::B::C b;

  B = ::B::C::a;		// gets bogus error
  B = ::B::C::f();		// gets bogus error
}