1// { dg-do run  }
2// PRMS Id: 11420
3// Bug: Can't handle indirect virtual template base init.
4
5extern "C" int printf (const char *, ...);
6
7template<class T>
8class Vbase {
9 public:
10  Vbase(T i) { printf ("%d\n", i); }
11};
12
13template<class T>
14class D1 : virtual public Vbase<T> {
15 public:
16  D1(T i) : Vbase<T>(i) {}
17};
18
19template<class T>
20class D2 : virtual public Vbase<T> {
21 public:
22  D2(T i) : Vbase<T>(i) {}
23};
24
25template<class T>
26class Most : public D1<T>, public D2<T> {
27 public:
28  Most(T i) : D1<T>(i), D2<T>(i), Vbase<T>(i) {}
29};
30
31int main () {
32  Most<int> x(2);
33  return 0;
34}
35