Lines Matching full:template
3 template<typename T, typename U> struct pair;
4 template<typename ...> struct tuple;
12 template<typename... Types>
21 template<typename ...Types>
23 template<typename ...OtherTypes>
33 ExpansionLengthMismatch<short, int, long>::Inner<unsigned int, unsigned long>::type // expected-note{{in instantiation of template class 'ExpansionLengthMismatch<short, int, long>::Inner<unsigned int, unsigned long>' requested here}}
41 template<typename T, int N, typename ... Types>
122 typedef typename Types::template apply<int> dependent_name_1; // expected-error{{declaration type contains unexpanded parameter pack 'Types'}}
123 typedef typename T::template apply<Types> dependent_name_2; // expected-error{{declaration type contains unexpanded parameter pack 'Types'}}
131 template<int ...Values>
152 template<typename ... Types>
157 template<typename T, template<class> class ...Meta>
163 template<typename T, typename... Types>
201 template<typename = Types*> // expected-error{{default argument contains unexpanded parameter pack 'Types'}}
203 template<int = static_cast<Types>(0)> // expected-error{{default argument contains unexpanded parameter pack 'Types'}}
205 template<template<typename> class = Types::template apply> // expected-error{{default argument contains unexpanded parameter pack 'Types'}}
208 template<Types value> // expected-error{{non-type template parameter type contains unexpanded parameter pack 'Types'}}
229 template<typename ...Types>
244 template<typename T, typename ...Types>
326 T::template test_unexpanded_exprs<Types>(); // expected-error{{expression contains unexpanded parameter pack 'Types'}}
336 // Types refers to the template type parameter pack in scope or a
340 t.template foo<Types>(); // expected-error{{expression contains unexpanded parameter pack 'Types'}}
368 template<typename ...Types>
373 template<typename T, typename U> struct pair;
375 template<typename ...OuterTypes>
377 template<typename ...InnerTypes>
381 template<typename ...VeryInnerTypes>
390 template<typename...> struct Tuple {};
391 template<typename T1, typename T2> struct Pair {};
393 template<class ... Args1> struct zip {
394 template<class ... Args2> struct with {
402 typedef zip<short>::with<unsigned short, unsigned>::type T2; // expected-note{{in instantiation of template class}}
404 template<class ... Args> void f(Args...);
405 template<class ... Args> void h(Args...);
407 template<class ... Args>
417 template<int> struct A { A(int); };
418 template<int...N> struct B {
419 template<int...M> struct C : A<N>... {
428 template<int> using T = int;
429 template<typename> struct S { static const int value = 0; };
430 template<typename> const int vt = 0; // expected-warning {{extension}}
432 template<int ...Ns> void g() {
437 template void g<>();
438 template void g<1, 2, 3>();