// { dg-do run { xfail sparc64-*-elf arm-*-pe } } | |
// { dg-options "-fexceptions" } | |
#include <typeinfo> | |
class B { | |
public: | |
int data; | |
B(int i) : data(i) { | |
} | |
} b(42); | |
int | |
main() { | |
try { | |
throw &b; | |
} catch (const B* bptr) { | |
if (bptr->data == 42) | |
{ | |
try { | |
throw &b; | |
} catch (void *bptr) { | |
if (((B*)bptr)->data == 42) | |
return 0; | |
} | |
} | |
} | |
return 1; | |
} |