From e533f648afeea51f6c8d2e2c26306aff0a947867 Mon Sep 17 00:00:00 2001 From: Andrew Haley Date: Thu, 15 Jul 1999 05:17:08 +0000 Subject: [PATCH] expr.c (expand_expr): Do not return the last statement in a block as the block's value. 1999-07-14 Andrew Haley * expr.c (expand_expr): Do not return the last statement in a block as the block's value. From-SVN: r28112 --- gcc/java/ChangeLog | 5 +++++ gcc/java/expr.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/gcc/java/ChangeLog b/gcc/java/ChangeLog index df78c4269c0..d170b3db10d 100644 --- a/gcc/java/ChangeLog +++ b/gcc/java/ChangeLog @@ -1,3 +1,8 @@ +1999-07-14 Andrew Haley + + * expr.c (expand_expr): Do not return the last statement in a + block as the block's value. + Sat Jul 3 22:26:32 1999 Alexandre Petit-Bianco * expr.c (force_evaluation_order): Save the COMPOUND_EXPR'ed diff --git a/gcc/java/expr.c b/gcc/java/expr.c index 8998bdb3a58..d47ed1af857 100644 --- a/gcc/java/expr.c +++ b/gcc/java/expr.c @@ -1895,7 +1895,6 @@ java_lang_expand_expr (exp, target, tmode, modifier) { tree local; tree body = BLOCK_EXPR_BODY (exp); - struct rtx_def *to_return; pushlevel (2); /* 2 and above */ expand_start_bindings (0); local = BLOCK_EXPR_DECLS (exp); @@ -1913,10 +1912,11 @@ java_lang_expand_expr (exp, target, tmode, modifier) emit_queue (); body = TREE_OPERAND (body, 1); } - to_return = expand_expr (body, target, tmode, modifier); + expand_expr (body, const0_rtx, VOIDmode, 0); + emit_queue (); poplevel (1, 1, 0); expand_end_bindings (getdecls (), 1, 0); - return to_return; + return const0_rtx; } break;