1 // { dg-do run { xfail sparc64-*-elf arm-*-pe } }
2 // { dg-options "-fexceptions" }
3 
foo()4 void foo() {
5   int i;
6   i = 42;
7   throw i;
8 }
9 
10 void ee(int *);
11 
bar()12 void bar() {
13   int i = 2;
14   ee(&i);
15 }
16 
ee(int *)17 void ee(int *) { }
18 
19 int
main()20 main() {
21   try {
22     foo();
23     return 3;
24   } catch (int& i) {
25     bar();
26     return i != 42;
27   }
28   return 2;
29 }
30