From: Alexandre Petit-Bianco Date: Thu, 4 Oct 2001 02:58:39 +0000 (-0700) Subject: parse.y (patch_assignment): Use lvalue's original TYPE when building the final COMPOU... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7754e0a9684f48609a9869619bbb405b5bcd9f47;p=gcc.git parse.y (patch_assignment): Use lvalue's original TYPE when building the final COMPOUND_EXPR. 2001-10-03 Alexandre Petit-Bianco * parse.y (patch_assignment): Use lvalue's original TYPE when building the final COMPOUND_EXPR. (try_reference_assignconv): Fixed leading comment. ( http://gcc.gnu.org/ml/java-patches/2001-q4/msg00027.html ) From-SVN: r46004 --- diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index 53b1ce6dc43..71fdf9251b4 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,9 @@ +2001-10-03 Alexandre Petit-Bianco + + * parse.y (patch_assignment): Use lvalue's original TYPE when + building the final COMPOUND_EXPR. + (try_reference_assignconv): Fixed leading comment. + 2001-09-26 Alexandre Petit-Bianco * parse.y (check_final_variable_indirect_assignment): For diff --git a/gcc/java/parse.y b/gcc/java/parse.y index 154fef3f699..6fa305486d4 100644 --- a/gcc/java/parse.y +++ b/gcc/java/parse.y @@ -13002,10 +13002,11 @@ patch_assignment (node, wfl_op1, wfl_op2) build (COMPOUND_EXPR, void_type_node, bound_check, check); /* Re-assemble the augmented array access. */ - lvalue = build (COMPOUND_EXPR, lhs_type, new_compound, lvalue); + lvalue = build (COMPOUND_EXPR, TREE_TYPE (lvalue), + new_compound, lvalue); } else - lvalue = build (COMPOUND_EXPR, lhs_type, check, lvalue); + lvalue = build (COMPOUND_EXPR, TREE_TYPE (lvalue), check, lvalue); } /* Final locals can be used as case values in switch @@ -13028,9 +13029,8 @@ patch_assignment (node, wfl_op1, wfl_op2) } /* Check that type SOURCE can be cast into type DEST. If the cast - can't occur at all, return 0 otherwise 1. This function is used to - produce accurate error messages on the reasons why an assignment - failed. */ + can't occur at all, return NULL; otherwise, return a possibly + modified rhs. */ static tree try_reference_assignconv (lhs_type, rhs)