11 class Rep_1 : public Rep {
16 virtual ~VBaseMain() { }
21 virtual ~OtherVBase() { }
24 class Rep_2 : public Rep {
27 class DVBase : public VBaseMain, public Rep_2, public OtherVBase {
32 class Main : public Rep_1, virtual public DVBase {
34 virtual ~Main() { did_fail = 0; }
44 delete (Rep*)(Rep_1*)new Main;
48 delete (DVBase*)new Main;
52 delete (VBaseMain*)(DVBase*)new Main;
56 delete (Rep*)(Rep_2*)(DVBase*)new Main;
60 delete (OtherVBase*)(DVBase*)new Main;