diff options
Diffstat (limited to 'gcc-4.8.1/gcc/testsuite/g++.dg/template/typedef27.C')
-rw-r--r-- | gcc-4.8.1/gcc/testsuite/g++.dg/template/typedef27.C | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/template/typedef27.C b/gcc-4.8.1/gcc/testsuite/g++.dg/template/typedef27.C deleted file mode 100644 index e50f17ccd..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/template/typedef27.C +++ /dev/null @@ -1,55 +0,0 @@ -// Origin: PR c++/42713 -// { dg-do compile } - -template<class T> -struct S -{ -}; - -template<class T> -struct S0 -{ - typedef T TT; -}; - -template<class U, class V> -struct super_struct : S0<V> -{ - typedef S0<V> super; -}; - -template<class U, class V, class W> -struct S1 : super_struct<U, V> -{ - typedef super_struct<U, V> super; - typedef typename super::super Super2; - typedef typename Super2::TT Super2TT; - void - foo() - { - S<Super2TT> s1; - } -}; - -template<class U, class V> -struct S2 : super_struct<U, V> -{ - typedef super_struct<U, V> super; - typedef typename super::super Super2; - typedef typename Super2::TT Super2TT; - void - foo() - { - S<Super2TT> s1; - } -}; - -int -main() -{ - S1<int, S<int>, int> s1; - s1.foo(); - S2<int, S<int> > s2; - s2.foo(); -} - |