Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / g++.dg / template / ttp9.C
blob060ab7788aeef25e033f548929c8f3b0fe13a354
1 // { dg-do compile }
3 // Origin: David Abrahams <dave@boost-consulting.com>
4 //         Wolfgang Bangerth <bangerth@ticam.utexas.edu>
6 // PR c++/12170: Deducing template template parameter from nested
7 // class template.
9 template <typename> struct W {};
11 template< template<typename> class F, typename T>
12 int foo(W< F<T> >);
15 template<typename T>
16 struct L  {
17     static int const value = sizeof(foo(W<T>()));
18     typedef T type;
22 template <typename>
23 struct Y {
24     template <typename> struct X { typedef int type; };
25     typedef typename L<X<int> >::type type;
28 template struct Y<int>;