diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.pt/t12.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.pt/t12.C | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.pt/t12.C b/gcc/testsuite/g++.old-deja/g++.pt/t12.C new file mode 100644 index 000000000..86b65e21f --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.pt/t12.C @@ -0,0 +1,25 @@ +// { dg-do assemble } + +class OBJECT {int a;}; +class STDFILE {int b;}; + +template <class T> class VECTOR { + T *v; + int sz; +public: + T& elem(int i) { return v[i]; } + T& operator[] (int i); +}; + +template <class T> +class PVECTOR : VECTOR<void *> { +public: + T*& elem(int i) + {return (T*&) VECTOR<void *>::elem(i); } + T*& operator[] (int i) + {return (T*&) VECTOR<void *>::operator[](i);} +}; + +PVECTOR<OBJECT *> *foo; + +PVECTOR<STDFILE *> *goo; |