summaryrefslogtreecommitdiff
path: root/gcc/cp/call.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cp/call.c')
-rw-r--r--gcc/cp/call.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index 02fc4b36623..54254c37f1d 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -5013,7 +5013,7 @@ convert_like_real (conversion *convs, tree expr, tree fn, int argnum,
switch (convs->kind)
{
case ck_rvalue:
- expr = convert_bitfield_to_declared_type (expr);
+ expr = decay_conversion (expr);
if (! MAYBE_CLASS_TYPE_P (totype))
return expr;
/* Else fall through. */
@@ -6256,11 +6256,10 @@ build_new_method_call (tree instance, tree fns, VEC(tree,gc) **args,
permerror (input_location,
"cannot call constructor %<%T::%D%> directly",
basetype, name);
- inform (input_location, "for a function-style cast, remove the "
- "redundant %<::%D%>", name);
+ permerror (input_location, " for a function-style cast, remove the "
+ "redundant %<::%D%>", name);
call = build_functional_cast (basetype, build_tree_list_vec (user_args),
complain);
- release_tree_vector (user_args);
return call;
}