mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-02-24 18:55:57 +08:00
call.c (convert_like_real): Call print_z_candidate and inform only if permerror returns true.
2014-07-15 Paolo Carlini <paolo.carlini@oracle.com> * call.c (convert_like_real): Call print_z_candidate and inform only if permerror returns true. From-SVN: r212560
This commit is contained in:
parent
78d22941b3
commit
603a0084b1
@ -1,3 +1,8 @@
|
||||
2014-07-15 Paolo Carlini <paolo.carlini@oracle.com>
|
||||
|
||||
* call.c (convert_like_real): Call print_z_candidate and inform only
|
||||
if permerror returns true.
|
||||
|
||||
2014-07-14 Jan Hubicka <hubicka@ucw.cz>
|
||||
|
||||
* class.c (build_clone): Do not clear assembler names of
|
||||
|
@ -6076,9 +6076,11 @@ convert_like_real (conversion *convs, tree expr, tree fn, int argnum,
|
||||
{
|
||||
if (t->kind == ck_user && t->cand->reason)
|
||||
{
|
||||
permerror (loc, "invalid user-defined conversion "
|
||||
"from %qT to %qT", TREE_TYPE (expr), totype);
|
||||
print_z_candidate (loc, "candidate is:", t->cand);
|
||||
complained = permerror (loc, "invalid user-defined conversion "
|
||||
"from %qT to %qT", TREE_TYPE (expr),
|
||||
totype);
|
||||
if (complained)
|
||||
print_z_candidate (loc, "candidate is:", t->cand);
|
||||
expr = convert_like_real (t, expr, fn, argnum, 1,
|
||||
/*issue_conversion_warnings=*/false,
|
||||
/*c_cast_p=*/false,
|
||||
@ -6089,7 +6091,7 @@ convert_like_real (conversion *convs, tree expr, tree fn, int argnum,
|
||||
complain);
|
||||
else
|
||||
expr = cp_convert (totype, expr, complain);
|
||||
if (fn)
|
||||
if (complained && fn)
|
||||
inform (DECL_SOURCE_LOCATION (fn),
|
||||
" initializing argument %P of %qD", argnum, fn);
|
||||
return expr;
|
||||
|
Loading…
Reference in New Issue
Block a user