summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.pt/repo3.C
blob: 53baf29f3491e2895e5aaa64753865b6c94d4dfe (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
28
29
30
31
32
33
34
35
36
37
// { dg-do link }
// { dg-options "-frepo" }
// { dg-require-host-local "" }
// { dg-skip-if "dkms are not final links" { vxworks_kernel } }

// Test that we properly generate the vtable and such for C.
// Contributed by scott snyder <snyder@fnal.gov>

// Build then link:

struct A
{
  virtual ~A () {}
};

template <typename T>
struct B : virtual public A
{
  virtual void foo () {}
};

template <typename T>
struct C : virtual public A
{
};

template <typename T>
struct D : public B<T>, public C<T>
{
};

main ()
{
  D<int> x;
}

// { dg-final { cleanup-repo-files } }