From Jason Turner

[temp.decls.general]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpsugtcdw0/{from.md → to.md} +27 -0
tmp/tmpsugtcdw0/{from.md → to.md} RENAMED
@@ -0,0 +1,27 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ### General <a id="temp.decls.general">[[temp.decls.general]]</a>
2
+
3
+ The template parameters of a template are specified in the angle bracket
4
+ enclosed list that immediately follows the keyword `template`.
5
+
6
+ A *primary template* declaration is one in which the name of the
7
+ template is not followed by a *template-argument-list*. The template
8
+ argument list of a primary template is the template argument list of its
9
+ *template-head* [[temp.arg]]. A template declaration in which the name
10
+ of the template is followed by a *template-argument-list* is a partial
11
+ specialization [[temp.spec.partial]] of the template named in the
12
+ declaration, which shall be a class or variable template.
13
+
14
+ For purposes of name lookup and instantiation, default arguments,
15
+ *type-constraint*s, *requires-clause*s [[temp.pre]], and
16
+ *noexcept-specifier*s of function templates and of member functions of
17
+ class templates are considered definitions; each default argument,
18
+ *type-constraint*, *requires-clause*, or *noexcept-specifier* is a
19
+ separate definition which is unrelated to the templated function
20
+ definition or to any other default arguments, *type-constraint*s,
21
+ *requires-clause*s, or *noexcept-specifier*s. For the purpose of
22
+ instantiation, the substatements of a constexpr if statement [[stmt.if]]
23
+ are considered definitions.
24
+
25
+ Because an *alias-declaration* cannot declare a *template-id*, it is not
26
+ possible to partially or explicitly specialize an alias template.
27
+