// { dg-do run { xfail sparc64-*-elf arm-*-pe } }
// { dg-options "-fexceptions -w" }

// Ensure reference handling works.

#include <typeinfo>

struct B {
  virtual int f() { }
} ob;

struct D : public B {
  virtual int f() { }
} od;

int main() {
  B *b=&ob;
  try {
    void *vp = &dynamic_cast<D&>(*b);
    return 1;
  } catch (std::bad_cast) {
    return 0;
  }
  return 1;
}
