// { dg-do run }
// { dg-options "-O" }
// Test that inlining a destructor with a catch block doesn't confuse the
// enclosing try block.
struct A {
~A()
{
try { throw 1; }
catch (...) { }
}
};
int main ()
{
try
{
A a;
throw 42;
}
catch (int i)
{
return (i != 42);
}
}