Lines Matching refs:type
65 typedef places<X1...,X2...> type;
69 struct make_places : append_places<typename make_places<N/2>::type,
70 typename make_places<N-N/2>::type> {};
71 template<> struct make_places<0> { typedef places<> type; };
72 template<> struct make_places<1> { typedef places<_> type; };
75 template<place> struct inner { typedef T type; };
83 typedef types<typename Take<_>::type...> take;
84 typedef types<typename Drop<_>::type...> drop;
89 using type = typename takedrop_impl<typename make_places<N>::type>::
93 using type = typename takedrop_impl<typename make_places<N>::type>::
97 using T1 = take<3, int, char, double, long>::type; // expected-note {{previous}}
100 using T1 = types<void, void, void, void>; // expected-error {{'types<void, void, void, void>' vs 'types<typename inner<_>::type, typename inner<_>::type, typename inner<_>::type, (no argument)>'}}
101 using D1 = drop<3, int, char, double, long>::type;
104 using T2 = take<4, int, char, double, long>::type; // expected-note {{previous}}
108 using T2 = types<void, void, void, void>; // expected-error {{'types<void, void, void, void>' vs 'types<typename inner<_>::type, typename inner<_>::type, typename inner<_>::type, typename inner<_>::type>'}}
109 using D2 = drop<4, int, char, double, long>::type;
112 using T3 = take<5, int, char, double, long>::type; // expected-note {{in instantiation of}}
113 using D3 = drop<5, int, char, double, long>::type; // expected-note {{in instantiation of}}