1 // { dg-do run { xfail sparc64-*-elf arm-*-pe } }
2 // { dg-options "-fexceptions" }
3 
4 #include <typeinfo>
5 
6 class A {
7   int space;
8 };
9 class B {
10 public:
11   int data;
B(int i)12   B(int i) : data(i) {
13   }
14 };
15 class D : public A, public B {
16 public:
D(int i)17   D(int i) : B(i) {
18   }
19 } d(42);
20 
main()21 int main() {
22   try {
23     throw &d;
24   } catch (B* b) {
25     if (b->data == 42)
26       return 0;
27   }
28   return 1;
29 }
30