summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/compat/eh/unexpected1_x.C
blob: 61361a68d9f643034ad562faa47f75f368710c19 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <exception>

struct One { };
struct Two { };

extern "C" void abort ();
extern void doit (void) throw (Two);
extern void handle_unexpected (void);

void
unexpected1_x ()
{
  std::set_unexpected (handle_unexpected);

  try
  {
    doit ();
  }
  catch (Two &)
  {
  }
  catch (...)
  {
    abort ();
  }
}