tmp/tmpd3wpbcu8/{from.md → to.md}
RENAMED
|
@@ -1,24 +1,21 @@
|
|
| 1 |
#### Candidate functions <a id="temp.dep.candidate">[[temp.dep.candidate]]</a>
|
| 2 |
|
| 3 |
-
For a function call
|
| 4 |
-
functions are found using the usual lookup rules (
|
| 5 |
-
[[basic.lookup.unqual]], [[basic.lookup.argdep]]
|
| 6 |
-
[[basic.lookup.qual]]) except that:
|
| 7 |
|
| 8 |
- For the part of the lookup using unqualified name lookup (
|
| 9 |
-
[[basic.lookup.unqual]])
|
| 10 |
-
[[basic.lookup.qual]]), only function declarations from the template
|
| 11 |
definition context are found.
|
| 12 |
- For the part of the lookup using associated namespaces (
|
| 13 |
[[basic.lookup.argdep]]), only function declarations found in either
|
| 14 |
the template definition context or the template instantiation context
|
| 15 |
are found.
|
| 16 |
|
| 17 |
-
If the
|
| 18 |
-
|
| 19 |
-
|
| 20 |
-
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
undefined behavior.
|
| 24 |
|
|
|
|
| 1 |
#### Candidate functions <a id="temp.dep.candidate">[[temp.dep.candidate]]</a>
|
| 2 |
|
| 3 |
+
For a function call where the *postfix-expression* is a dependent name,
|
| 4 |
+
the candidate functions are found using the usual lookup rules (
|
| 5 |
+
[[basic.lookup.unqual]], [[basic.lookup.argdep]]) except that:
|
|
|
|
| 6 |
|
| 7 |
- For the part of the lookup using unqualified name lookup (
|
| 8 |
+
[[basic.lookup.unqual]]), only function declarations from the template
|
|
|
|
| 9 |
definition context are found.
|
| 10 |
- For the part of the lookup using associated namespaces (
|
| 11 |
[[basic.lookup.argdep]]), only function declarations found in either
|
| 12 |
the template definition context or the template instantiation context
|
| 13 |
are found.
|
| 14 |
|
| 15 |
+
If the call would be ill-formed or would find a better match had the
|
| 16 |
+
lookup within the associated namespaces considered all the function
|
| 17 |
+
declarations with external linkage introduced in those namespaces in all
|
| 18 |
+
translation units, not just considering those declarations found in the
|
| 19 |
+
template definition and template instantiation contexts, then the
|
| 20 |
+
program has undefined behavior.
|
|
|
|
| 21 |
|