From 8e2b13c322771648d25066146072cdb94c02e017 Mon Sep 17 00:00:00 2001 From: Richard Kenner Date: Mon, 14 Mar 1994 08:12:41 -0500 Subject: [PATCH] (bc_expand_start_cond): Set exit_label if not EXITFLAG. (bc_expand_end_bindings): Only define exit_label if set. Don't pop nesting_stack. From-SVN: r6783 --- gcc/stmt.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gcc/stmt.c b/gcc/stmt.c index 1b1ac32cd59..a8c369e6c17 100644 --- a/gcc/stmt.c +++ b/gcc/stmt.c @@ -2256,6 +2256,8 @@ bc_expand_start_cond (cond, exitflag) struct nesting *thiscond = cond_stack; thiscond->data.case_stmt.nominal_type = cond; + if (! exitflag) + thiscond->exit_label = gen_label_rtx (); bc_expand_expr (cond); bc_emit_bytecode (xjumpifnot); bc_emit_bytecode_labelref (BYTECODE_BC_LABEL (thiscond->exit_label)); @@ -3327,10 +3329,10 @@ bc_expand_end_bindings (vars, mark_ends, dont_jump_in) if (! TREE_USED (TREE_VALUE (decl)) && TREE_CODE (TREE_VALUE (decl)) == VAR_DECL) warning_with_decl (decl, "unused variable `%s'"); - bc_emit_bytecode_labeldef (BYTECODE_BC_LABEL (thisbind->exit_label)); + if (thisbind->exit_label) + bc_emit_bytecode_labeldef (BYTECODE_BC_LABEL (thisbind->exit_label)); /* Pop block/bindings off stack */ - POPSTACK (nesting_stack); POPSTACK (block_stack); } -- 2.30.2