1// Test to make sure that we keep searching if we don't find the type we
2// want at the expected address.
3
4// { dg-do run }
5
6struct A
7{
8  virtual void f() {};
9};
10
11struct B: A { };
12
13struct C: A { };
14
15struct D: B, C { };
16
17int main()
18{
19  D d;
20  A* ap = static_cast<B*>(&d);
21  C* cp = dynamic_cast<C*>(ap);
22  if (cp == 0)
23    return 1;
24  else
25    return 0;
26}
27