1 // { dg-do run } 2 class S1 { int i; }; 3 class S2 { int i; }; 4 class VB { 5 public: foo()6 virtual void foo() { } 7 }; 8 9 class D : public S1, virtual public VB { 10 } d; 11 12 class E : public S2, public D { 13 } e; 14 main()15int main() { 16 return (char *)&e - (char *)dynamic_cast<E*>((D*)&e); 17 } 18