// { dg-do assemble } // { dg-options "-w" } // PRMS Id: 4342 (second testcase) // Bug: g++ still can't deal with ambiguous inheritance in destructor calls. struct ccUnwind { ccUnwind (); virtual ~ccUnwind (); }; struct ccPersistent { virtual void bar(); }; struct ccImpExp : public ccPersistent, public ccUnwind {}; struct ccTool : public ccImpExp {}; struct ccScreenTool : public ccTool {}; struct ccVTool : public ccScreenTool {}; struct ccScreenObjRep : public ccUnwind {}; struct ccScreenObj : public ccScreenObjRep {}; struct ccVSTool : public ccImpExp, public ccUnwind {}; struct ccSCCP : public ccVSTool {}; void foo () { ccSCCP* foo = new ccSCCP; delete foo; }