2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.mike / net21.C
blob430bb740deedfa1a4035be778d0203d74d738e1b
1 // { dg-do run  }
2 // Make sure we can initialize complex (MI ambiguous) vtables.
4 extern "C" int printf(const char *, ...);
6 struct a
8     virtual void f() = 0;
9 };
11 struct b
13     virtual void g() { };
16 struct c: public a, public b
18     virtual void f();
19     virtual void g();
22 void c::f()
24     printf("c::f()\n");
27 void c::g()
29     printf("c::g()\n");
32 struct e: public b
36 struct h
40 struct d: public c, public e, public h
42     virtual void f();
43     virtual void g();
45 void d::f()
47     printf("d::f()\n");
50 void d::g()
52     printf("d::g()\n");
55 int main(int argc, char* argv[])
57     a* tmp = new d;
58     tmp->f();
59     return 0;