* g++.dg/eh/new1.C: XFAIL on AIX.
[official-gcc.git] / gcc / testsuite / g++.dg / eh / cond4.C
blob4d312e478d44294eef6a59d15b7a968f1ca38fff
1 // Runtime version of cond3.C.  We call terminate when the A cleanup throws
2 // because we've already initialized the exception object.
3 // { dg-do run }
5 #include <exception>
6 #include <cstdlib>
8 void my_terminate ()
10   std::exit (0);
13 struct A {
14   A(int) { }
15   ~A() throw(int) { throw 1; };
17 struct B {
18   B(A) { }
19   ~B() { }
21 bool b;
23 int main()
25   std::set_terminate (my_terminate);
26   try
27     {
28       throw b ? B(1) : B(1);
29     }
30   catch (...) { }
31   return 1;