aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/abi/vbase13.C
blob: 6a0bff484d78c61c7691c3c45181c46a15efe1c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// { dg-do run }
// { dg-options "-fabi-version=0 -w" }

struct E1 {};
struct E2 : public E1 {};
struct E : public E1, public E2 {};
struct N : public E { virtual void f () {} };

struct X : virtual public N {
};

int main () {
  X x;
  /* N should not be the primary base of X; it is not nearly empty.  */
  if ((void*)&x == (void*)(N*)&x)
    return 1;
}