Lines Matching full:template
3 // Template argument deduction with template template parameters.
4 template<typename T, template<T> class A>
9 template<template<int> class A>
14 template<int> struct X0i;
15 template<long> struct X0l;
19 template<typename T, typename U>
24 template<typename T>
29 template<typename T> struct allocator { };
30 template<typename T, typename Alloc = allocator<T> > struct vector {};
37 template<typename T, typename Arg1, typename Arg2>
43 template<typename Arg1, typename Arg2>
48 template<typename Arg1, typename Arg2>
54 template<typename T, typename Arg1, typename Arg2>
60 template<template<typename> class TT, typename T1, typename Arg1, typename Arg2>
65 template<template<typename, typename> class TT, typename T1, typename T2,
73 template<template<typename, typename> class TT, typename T1,
86 template <typename T, int N> void f(const T (&a)[N]);
90 // Must not examine base classes of incomplete type during template argument
93 template <typename T> struct X {
94 template <typename U> X(const X<U>& u);
105 template <typename T_> void g (T_&); // expected-note{{T_ = int}}
110 template <class T> void make(const T *(*fn)()); // expected-note {{candidate template ignored: can't deduce a type for 'T' which would make 'const T' equal 'char'}}
118 template<typename T> void foo(const T a[3][3]);
127 template<typename T> struct Const { typedef void const type; };
129 template<typename T> void f(T, typename Const<T>::type*);
130 template<typename T> void f(T, void const *);
141 template <void F(char)> static inline void foo();
145 template<typename T> static inline void wobble(T ch);
157 template <E> struct A {};
158 template <E e> void foo(const A<e> &a) {}