summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.mike/eh55.C
blob: 8b574f57d7bf615b28839d8791b72c0cc57876f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// { dg-do run { xfail sparc64-*-elf arm-*-pe } }
// { dg-options "-fexceptions" }

#include <exception>
#include <stdlib.h>

void my_terminate_handler() {
  exit(0);
}

void throw_an_unexpected_exception() throw() {
  throw 1;	// { dg-warning "throw will always call terminate" "" { target c++1z } }
}

int main() {
  std::set_terminate(my_terminate_handler);
  throw_an_unexpected_exception();
  return 1;
}