1 /* { dg-do compile } */
2 /* { dg-options "-O1 -fdump-tree-ssa" } */
3 extern "C" void abort();
4 bool destructor_called = false;
14 ~O() { destructor_called = true; };
18 Raiser() throw( int ) {throw 1;};
26 static_cast<B&>(d).Run();
29 if (!destructor_called)
35 /* We should devirtualize call to D::Run */
36 /* { dg-final { scan-tree-dump-times "D::Run \\(" 1 "ssa" { xfail *-*-* } } } */
37 /* { dg-final { cleanup-tree-dump "ssa" } } */