1 // Copyright (C) 2000 Free Software Foundation, Inc. 2 // Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> 3 4 // Check primary bases are chosen correctly. 5 FooA6struct A { virtual void Foo () {}}; 7 8 struct B1 : virtual A {}; 9 struct B2 : virtual A {}; 10 11 struct C : virtual B1 {}; 12 13 struct D : virtual B1, B2, C {}; 14 main()15int main () 16 { 17 D d; 18 A *ap = &d; 19 C *cp = &d; 20 21 #if __GXX_ABI_VERSION >= 100 22 if (static_cast <void *> (ap) != static_cast <void *> (cp)) 23 return 1; 24 #endif 25 26 return 0; 27 } 28