blob: b959d1c5620878108ebb20e86bff645bf3ce5ea3 [file] [log] [blame]
// { dg-do run }
// Copyright (C) 2001 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 26 Dec 2001 <nathan@nathan@codesourcery.com>
// PR 411
#ifdef __GXX_EXPERIMENTAL_CXX0X__
#define NOEXCEPT_FALSE noexcept (false)
#else
#define NOEXCEPT_FALSE
#endif
bool was_f_in_Bar_destroyed=false;
struct Foo
{
~Foo()
{
was_f_in_Bar_destroyed=true;
}
};
struct Bar
{
~Bar() NOEXCEPT_FALSE
{
throw 1;
}
Foo f;
};
int main()
{
try
{
Bar f;
}
catch(int i)
{
if(was_f_in_Bar_destroyed)
{
return 0;
}
}
return 1;
}