Dead
[official-gcc.git] / gomp-20050608-branch / gcc / testsuite / g++.old-deja / g++.eh / spec1.C
blob0ff888369f293bff2b254c34b548c8afb2cd6266
1 // { dg-do run  }
2 // Testing exception specifications.
3 // Test 1: the original exception succeeds.
5 #include <stdlib.h>
6 #include <exception>
8 void my_term ()  { exit (1); }
9 void my_unexp () { throw 42; }
11 void
12 f () throw (char, int, std::bad_exception)
14   throw 'a';
17 int main ()
19   std::set_terminate (my_term);
20   std::set_unexpected (my_unexp);
22   try
23     {
24       f ();
25     }
26   catch (char)
27     {
28       return 0;
29     }
30   catch (int)
31     {
32       return 3;
33     }
34   catch (std::bad_exception)
35     {
36       return 4;
37     }
38   return 5;