diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.abi/primary5.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.abi/primary5.C | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.abi/primary5.C b/gcc/testsuite/g++.old-deja/g++.abi/primary5.C new file mode 100644 index 000000000..07ea2d7d8 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.abi/primary5.C @@ -0,0 +1,37 @@ +// { dg-do run } +// Copyright (C) 2000 Free Software Foundation, Inc. +// Contributed by Nathan Sidwell 4 February 2001 <nathan@codesourcery.com> + +// Check primary bases are chosen correctly. + +struct A1 +{ + virtual void Foo () {} +}; + +struct A : A1 +{ +}; + +struct B : A +{ +}; + +struct C : virtual B +{ +}; + +struct D : virtual B, virtual C +{ +}; + +int main() +{ + D d; +#if __GXX_ABI_VERSION >= 100 + if (sizeof (D) != sizeof (A)) + return 1; +#endif + + return 0; +} |