blob: 6ff0574c2a3d0745353a265ee4b17bdf824067d7 [file] [log] [blame]
// Test that cleanups get run when a catch filter fails to match.
// { dg-do run }
extern "C" void exit(int);
extern "C" void abort();
struct a
{
a();
~a();
};
struct e1 {};
struct e2 {};
void
ex_test ()
{
a aa;
try
{
throw e1 ();
}
catch (e2 &)
{
}
}
int
main ()
{
try
{
ex_test ();
}
catch (...)
{
}
abort ();
}
a::a() { }
a::~a() { exit (0); }