| // { dg-do run } | |
| template <class T, class V> | |
| class A { | |
| public: | |
| A (T at, V av); | |
| void print () { } | |
| protected: | |
| T t; | |
| V v; | |
| }; | |
| template <class T, class V> | |
| A<T, V>::A (T at, V av) { | |
| t = at; | |
| v = av; | |
| } | |
| template <class T, class V> | |
| class B: public virtual A<T, V> { | |
| public: | |
| B (T at, V av); | |
| void print () { } | |
| }; | |
| template <class T, class V> | |
| B<T, V>::B (T at, V av) : A<T, V> (at, av) { } // { dg-bogus "" } | |
| int main () { | |
| int i = 2; | |
| double x = 2; | |
| B<int, double> ab(i, x); | |
| ab.print(); | |
| return 0; | |
| } |