call.c (z_candidate::template_decl): Rename from template.
* call.c (z_candidate::template_decl): Rename from template. (add_template_candidate_real): Adjust member reference. (joust): Likewise. From-SVN: r85411
This commit is contained in:
parent
dc6d70957c
commit
ea0ad32920
2 changed files with 14 additions and 7 deletions
|
@ -1,3 +1,9 @@
|
|||
2004-08-01 Gabriel Dos Reis <gdr@integrable-solutions.net>
|
||||
|
||||
* call.c (z_candidate::template_decl): Rename from template.
|
||||
(add_template_candidate_real): Adjust member reference.
|
||||
(joust): Likewise.
|
||||
|
||||
2004-07-29 Mark Mitchell <mark@codesourcery.com>
|
||||
|
||||
* cp-tree.h (IDENTIFIER_REPO_CHOSEN): Define.
|
||||
|
|
|
@ -424,7 +424,7 @@ struct z_candidate {
|
|||
the `this' pointer must correspond to the most derived class
|
||||
indicated by the CONVERSION_PATH. */
|
||||
tree conversion_path;
|
||||
tree template;
|
||||
tree template_decl;
|
||||
candidate_warning *warnings;
|
||||
z_candidate *next;
|
||||
};
|
||||
|
@ -2262,9 +2262,9 @@ add_template_candidate_real (struct z_candidate **candidates, tree tmpl,
|
|||
for this will point at template <class T> template <> S<T>::f(int),
|
||||
so that we can find the definition. For the purposes of
|
||||
overload resolution, however, we want the original TMPL. */
|
||||
cand->template = tree_cons (tmpl, targs, NULL_TREE);
|
||||
cand->template_decl = tree_cons (tmpl, targs, NULL_TREE);
|
||||
else
|
||||
cand->template = DECL_TEMPLATE_INFO (fn);
|
||||
cand->template_decl = DECL_TEMPLATE_INFO (fn);
|
||||
|
||||
return cand;
|
||||
}
|
||||
|
@ -6023,9 +6023,9 @@ joust (struct z_candidate *cand1, struct z_candidate *cand2, bool warn)
|
|||
F1 is a non-template function and F2 is a template function
|
||||
specialization. */
|
||||
|
||||
if (! cand1->template && cand2->template)
|
||||
if (!cand1->template_decl && cand2->template_decl)
|
||||
return 1;
|
||||
else if (cand1->template && ! cand2->template)
|
||||
else if (cand1->template_decl && !cand2->template_decl)
|
||||
return -1;
|
||||
|
||||
/* or, if not that,
|
||||
|
@ -6033,10 +6033,11 @@ joust (struct z_candidate *cand1, struct z_candidate *cand2, bool warn)
|
|||
more specialized than the template for F2 according to the partial
|
||||
ordering rules. */
|
||||
|
||||
if (cand1->template && cand2->template)
|
||||
if (cand1->template_decl && cand2->template_decl)
|
||||
{
|
||||
winner = more_specialized
|
||||
(TI_TEMPLATE (cand1->template), TI_TEMPLATE (cand2->template),
|
||||
(TI_TEMPLATE (cand1->template_decl),
|
||||
TI_TEMPLATE (cand2->template_decl),
|
||||
DEDUCE_ORDER,
|
||||
/* Tell the deduction code how many real function arguments
|
||||
we saw, not counting the implicit 'this' argument. But,
|
||||
|
|
Loading…
Add table
Reference in a new issue