Lines Matching full:template
3 // If a template-parameter of a class template or alias template has a default
4 // template-argument, each subsequent template-parameter shall either have a
5 // default template-argument supplied or be a template parameter pack.
6 template<typename> struct vector;
8 template<typename T = int, typename> struct X3t; // expected-error{{template parameter missing a de…
9 template<typename T = int, typename> using A3t = int; // expected-error{{template parameter missing…
10 template<int V = 0, int> struct X3nt; // expected-error{{template parameter missing a default argum…
11 template<int V = 0, int> using A3nt = int; // expected-error{{template parameter missing a default …
12 template<template<class> class M = vector, template<class> class> struct X3tt; // expected-error{{t…
13 template<template<class> class M = vector, template<class> class> using A3tt = int; // expected-err…
15 template<typename T = int, typename ...Types> struct X2t;
16 template<typename T = int, typename ...Types> using A2t = X2t<T, Types...>;
17 template<int V = 0, int ...Values> struct X2nt;
18 template<int V = 0, int ...Values> using A2nt = X2nt<V, Values...>;
19 template<template<class> class M = vector, template<class> class... Metas>
21 template<template<class> class M = vector, template<class> class... Metas>
24 // If a template-parameter of a primary class template or alias template is a
25 // template parameter pack, it shall be the last template-parameter.
26 template<typename ...Types, // expected-error{{template parameter pack must be the last template pa…
30 template<typename ...Types, // expected-error{{template parameter pack must be the last template pa…
34 template<int ...Values, // expected-error{{template parameter pack must be the last template parame…
37 template<int ...Values, // expected-error{{template parameter pack must be the last template parame…
41 template<template<typename> class ...Templates, // expected-error{{template parameter pack must be …
44 template<template<typename> class ...Templates, // expected-error{{template parameter pack must be …
49 // template partial specializations because template arguments can be
51 template<typename... Types> struct X1t;
52 template<typename ...Types, typename T> struct X1t<T, Types...> { };
54 template<int... Values> struct X1nt;
55 template<int ...Values, int V> struct X1nt<V, Values...> { };
57 template<template<int> class... Meta> struct X1tt;
58 template<template<int> class... Meta, template<int> class M>
61 template<typename ...Types, typename T>
64 template<int ...Values, int V>
67 template<template<int> class... Meta, template<int> class M>
71 template<typename T = int, typename U> T &f0(U) { T *x = 0; return *x; } in f0()
79 template<> int &f0(int*);
80 template int &f0(double&);