summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/abi/thunk2.C
blob: e6b2924cfdba3d3d370fde8c63345bdc002ca5cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// { dg-do compile { target i?86-*-* x86_64-*-* } }
// { dg-require-effective-target ilp32 }
// { dg-options -w }

struct A {
  virtual void f2 ();
  virtual void f3 ();
};

struct B : virtual public A {
  virtual void f3 ();
};

struct C : public A, public B {
  virtual void f4 ();
};

struct D : virtual public B, virtual public C, virtual public A 
{
  virtual void f5 ();
  virtual void f6 ();
  virtual void f3 ();
};

void D::f3 () {}

// { dg-final { scan-assembler _ZTvn4_n20_N1D2f3Ev } }