aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/call.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/cp/call.c')
-rw-r--r--gcc/cp/call.c48
1 files changed, 24 insertions, 24 deletions
diff --git a/gcc/cp/call.c b/gcc/cp/call.c
index b87d3939103..acac613ae79 100644
--- a/gcc/cp/call.c
+++ b/gcc/cp/call.c
@@ -179,10 +179,10 @@ static void add_builtin_candidates
tree, tree *, int, tsubst_flags_t);
static void add_builtin_candidate
(struct z_candidate **, enum tree_code, enum tree_code,
- tree, tree, tree, tree *, tree *, int, tsubst_flags_t);
+ tree, tree, tree, tree *, type_array, int, tsubst_flags_t);
static bool is_complete (tree);
static void build_builtin_candidate
- (struct z_candidate **, tree, tree, tree, tree *, tree *,
+ (struct z_candidate **, tree, tree, tree, tree *, type_array,
int, tsubst_flags_t);
static struct z_candidate *add_conv_candidate
(struct z_candidate **, tree, tree, const vec<tree, va_gc> *, tree,
@@ -2253,7 +2253,7 @@ add_conv_candidate (struct z_candidate **candidates, tree fn, tree obj,
static void
build_builtin_candidate (struct z_candidate **candidates, tree fnname,
- tree type1, tree type2, tree *args, tree *argtypes,
+ tree type1, tree type2, tree *args, type_array argtypes,
int flags, tsubst_flags_t complain)
{
conversion *t;
@@ -2362,7 +2362,7 @@ promoted_arithmetic_type_p (tree type)
static void
add_builtin_candidate (struct z_candidate **candidates, enum tree_code code,
enum tree_code code2, tree fnname, tree type1,
- tree type2, tree *args, tree *argtypes, int flags,
+ tree type2, tree *args, type_array argtypes, int flags,
tsubst_flags_t complain)
{
switch (code)
@@ -2791,8 +2791,8 @@ add_builtin_candidate (struct z_candidate **candidates, enum tree_code code,
(candidates, fnname, type1, type2, args, argtypes, flags, complain);
}
-tree
-type_decays_to (tree type)
+ttype *
+type_decays_to (ttype_p type)
{
if (TREE_CODE (type) == ARRAY_TYPE)
return build_pointer_type (TREE_TYPE (type));
@@ -2821,10 +2821,10 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
{
int ref1, i;
int enum_p = 0;
- tree type, argtypes[3], t;
+ ttype *type, *argtypes[3], *t;
/* TYPES[i] is the set of possible builtin-operator parameter types
we will consider for the Ith argument. */
- vec<tree, va_gc> *types[2];
+ vec<ttype *, va_gc> *types[2];
unsigned ix;
for (i = 0; i < 3; ++i)
@@ -2832,7 +2832,7 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
if (args[i])
argtypes[i] = unlowered_expr_type (args[i]);
else
- argtypes[i] = NULL_TREE;
+ argtypes[i] = NULL;
}
switch (code)
@@ -2887,8 +2887,8 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
ref1 = 0;
}
- types[0] = make_tree_vector ();
- types[1] = make_tree_vector ();
+ types[0] = make_ttype_vector ();
+ types[1] = make_ttype_vector ();
for (i = 0; i < 2; ++i)
{
@@ -2906,9 +2906,9 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
if (code == COND_EXPR)
{
if (real_lvalue_p (args[i]))
- vec_safe_push (types[i], TREE_CAST (build_reference_type (argtypes[i])));
+ vec_safe_push (types[i], build_reference_type (argtypes[i]));
- vec_safe_push (types[i], TYPE_MAIN_VARIANT (argtypes[i]));
+ vec_safe_push (types[i], TTYPE_MAIN_VARIANT (argtypes[i]));
}
else if (! convs)
@@ -2916,7 +2916,7 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
for (; convs; convs = TREE_CHAIN (convs))
{
- type = TREE_TYPE (convs);
+ type = TREE_TTYPE (convs);
if (i == 0 && ref1
&& (TREE_CODE (type) != REFERENCE_TYPE
@@ -2943,7 +2943,7 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
else
{
if (code == COND_EXPR && real_lvalue_p (args[i]))
- vec_safe_push (types[i], TREE_CAST (build_reference_type (argtypes[i])));
+ vec_safe_push (types[i], build_reference_type (argtypes[i]));
type = non_reference (argtypes[i]);
if (i != 0 || ! ref1)
{
@@ -2962,7 +2962,7 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
FOR_EACH_VEC_ELT_REVERSE (*(types[0]), ix, t)
{
unsigned jx;
- tree u;
+ ttype *u;
if (!types[1]->is_empty ())
FOR_EACH_VEC_ELT_REVERSE (*(types[1]), jx, u)
@@ -2975,8 +2975,8 @@ add_builtin_candidates (struct z_candidate **candidates, enum tree_code code,
NULL_TREE, args, argtypes, flags, complain);
}
- release_tree_vector (types[0]);
- release_tree_vector (types[1]);
+ release_ttype_vector (types[0]);
+ release_ttype_vector (types[1]);
}
@@ -6735,7 +6735,7 @@ convert_arg_to_ellipsis (tree arg, tsubst_flags_t complain)
warning_at (loc, OPT_Wdouble_promotion,
"implicit conversion from %qT to %qT when passing "
"argument to function",
- arg_type, TREE_CAST(double_type_node));
+ arg_type, double_type_node);
arg = convert_to_real (double_type_node, arg);
}
else if (NULLPTR_TYPE_P (arg_type))
@@ -6847,16 +6847,16 @@ build_x_va_arg (source_location loc, tree expr, tree type)
would have happened when passed via ellipsis. Return the promoted
type, or the passed type if there is no change. */
-tree
-cxx_type_promotes_to (tree type)
+ttype *
+cxx_type_promotes_to (ttype_p type)
{
- tree promote;
+ ttype *promote;
/* Perform the array-to-pointer and function-to-pointer
conversions. */
- type = type_decays_to (type);
+ promote = type_decays_to (type);
- promote = type_promotes_to (type);
+ promote = type_promotes_to (promote);
if (same_type_p (type, promote))
promote = type;