2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.other / virtual9.C
blobc10eef69f93b36e8dc4412d4443d297cf3b1f9d7
1 // { dg-do run  }
2 // Source: Neil Booth, from PR #111.
4 class A
6 public :
7      int i;
8 };
10 class B : virtual public A
14 class C : virtual public A
18 class D : public B, public C
20 public :
21      int f(void);
22      int g(void);
25 int D::f(void)
27      return B::i;
30 int D::g(void)
32      return this->B::i;
35 D d;
36 extern "C" void abort (void);
38 int main(void)
40     d.C::i=325;
42     if (d.f() != d.B::i || d.f() != d.g())
43       abort ();
45     return 0;