summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/inherit/virtual4.C
blob: 5415fdb3cf044513c5c9687a24de7efcfa83ae89 (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
// PR c++/31027

struct A {};

template<typename T>
struct C: virtual A {
  C() {}
  template<typename T_OTHER> C(const C<T_OTHER>&) {}
  C func(const class C<long>&) const;
  operator bool() const;
};

template<typename T>
struct D: C<T> {
  void func2() {
    C<int>a;
    a.func(a);
  }
};

void func3() {
  C<int>a;
  a.func(a);
}