tmp/tmpuk0nekui/{from.md → to.md}
RENAMED
|
@@ -24,20 +24,24 @@ function type. The deduction process determines whether one of the
|
|
| 24 |
templates is more specialized than the other. If so, the more
|
| 25 |
specialized template is the one chosen by the partial ordering process.
|
| 26 |
If both deductions succeed, the partial ordering selects the more
|
| 27 |
constrained template (if one exists) as determined below.
|
| 28 |
|
| 29 |
-
To produce the transformed template, for each type,
|
| 30 |
-
template template
|
| 31 |
-
[[temp.variadic]] thereof) synthesize a unique
|
| 32 |
-
|
| 33 |
-
|
|
|
|
| 34 |
|
| 35 |
[*Note 1*: The type replacing the placeholder in the type of the value
|
| 36 |
-
synthesized for a
|
| 37 |
synthesized type. — *end note*]
|
| 38 |
|
|
|
|
|
|
|
|
|
|
| 39 |
Each function template M that is a member function is considered to have
|
| 40 |
a new first parameter of type X(M), described below, inserted in its
|
| 41 |
function parameter list. If exactly one of the function templates was
|
| 42 |
considered by overload resolution via a rewritten candidate
|
| 43 |
[[over.match.oper]] with a reversed order of parameters, then the order
|
|
|
|
| 24 |
templates is more specialized than the other. If so, the more
|
| 25 |
specialized template is the one chosen by the partial ordering process.
|
| 26 |
If both deductions succeed, the partial ordering selects the more
|
| 27 |
constrained template (if one exists) as determined below.
|
| 28 |
|
| 29 |
+
To produce the transformed template, for each type, constant, type
|
| 30 |
+
template, variable template, or concept template parameter (including
|
| 31 |
+
template parameter packs [[temp.variadic]] thereof) synthesize a unique
|
| 32 |
+
type, value, class template, variable template, or concept,
|
| 33 |
+
respectively, and substitute it for each occurrence of that parameter in
|
| 34 |
+
the function type of the template.
|
| 35 |
|
| 36 |
[*Note 1*: The type replacing the placeholder in the type of the value
|
| 37 |
+
synthesized for a constant template parameter is also a unique
|
| 38 |
synthesized type. — *end note*]
|
| 39 |
|
| 40 |
+
A synthesized template has the same *template-head* as its corresponding
|
| 41 |
+
template template parameter.
|
| 42 |
+
|
| 43 |
Each function template M that is a member function is considered to have
|
| 44 |
a new first parameter of type X(M), described below, inserted in its
|
| 45 |
function parameter list. If exactly one of the function templates was
|
| 46 |
considered by overload resolution via a rewritten candidate
|
| 47 |
[[over.match.oper]] with a reversed order of parameters, then the order
|