diff options
Diffstat (limited to 'gcc/cp/call.c')
-rw-r--r-- | gcc/cp/call.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 3c1f9aa..0c08d18 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -605,8 +605,16 @@ build_conv (code, type, from) enum tree_code code; tree type, from; { - tree t = build1 (code, type, from); + tree t; int rank = ICS_STD_RANK (from); + + /* We can't use buidl1 here because CODE could be USER_CONV, which + takes two arguments. In that case, the caller is responsible for + filling in the second argument. */ + t = make_node (code); + TREE_TYPE (t) = type; + TREE_OPERAND (t, 0) = from; + switch (code) { case PTR_CONV: |