1 // This first batch of classes are for PR 11226.
13 class Middle: public virtual mc::Base {
18 Middle(void): mc::Base() { y = 3; };
22 return y; // breakpoint 1
26 class Derived: public virtual Middle {
31 Derived(void): Middle() { z = 4; };
35 return z; // breakpoint 2
40 // These classes are for PR 9629.
42 struct B : virtual A {};
44 struct C {int v; C() {v=11;};};
49 // These classes are for another regression test, from
50 // https://bugzilla.redhat.com/show_bug.cgi?id=560741
55 RHA() : mA(0xaaaaaaaa) {}
63 RHB() : mB(0xbbbbbbbb) {}
68 class RHC : public RHA,
72 RHC() : RHA(), RHB() {}
80 virtual ~RTTI_base() {}
88 RTTI_data() : data(1) {}
91 /* These classes are for testing pointer adjustment when printing a
92 pointer into a virtual base, with print object on. */
96 virtual ~VirtualBase() {}
99 struct VirtualMiddleA : public virtual VirtualBase {
100 /* Make sure the vbase offset of Virtual::VirtualBaseB is larger
101 than what fits in one byte. */
104 virtual ~VirtualMiddleA() {}
107 struct VirtualMiddleB : public virtual VirtualBase {
110 virtual ~VirtualMiddleB() {}
113 struct Virtual : public virtual VirtualMiddleA, public virtual VirtualMiddleB {
116 virtual ~Virtual() {}
120 VirtualMiddleB *virtual_middle_b = &virtual_o;
131 return 0; // breakpoint 3