aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/expr.c
diff options
context:
space:
mode:
authorPer Bothner <bothner@gcc.gnu.org>1998-12-23 02:46:45 -0800
committerPer Bothner <bothner@gcc.gnu.org>1998-12-23 02:46:45 -0800
commit5a005d9ead24d081423f620a84da54d4a260b001 (patch)
treed2caa4d11dd4417a98a74be6e8b0a49a2e9c6768 /gcc/java/expr.c
parente402ca989ba0d54124f90b6a95cc595e272f7919 (diff)
downloadgcc-5a005d9ead24d081423f620a84da54d4a260b001.zip
gcc-5a005d9ead24d081423f620a84da54d4a260b001.tar.gz
gcc-5a005d9ead24d081423f620a84da54d4a260b001.tar.bz2
expr.c (process_jvm_instruction): Do load_type_state after JSR.
d * expr.c (process_jvm_instruction): Do load_type_state after JSR. * verify.c (verify_jvm_instructions): Fix off-by-one error. * jcf-write.c (CHECK_PUT): Add (void) cast to avoid -Wall warnings. (localvar_alloc): Change return type to void, (emit_unop): Remove unused variable size. * jcf-write.c (struct jcf_block): Add new union. (PENDING_CLEANUP_PC, PENDING_EXIT_PC, UNDEFINED_PC): New macros. (call_cleanups): New functions. (struct jcf_partial): New fields num_finalizers and return_value_decl. (generate_bytecode_insns): Support CLEANUP_POINT_EXPR and WITH_CLEANUP_EXPR. Handle cleanups in RETURN_EXPR and EXIT_BLOCK_EXPR. * lang.c (lang_init): Call using_eh_for_cleanups. * parse.y (java_complete_lhs): For SYNCHRONIZED_EXPR, defer completing operands to patch_synchronized_statement. Support CLEANUP_POINT_EXPR, WITH_CLEANUP_EXPR. (patch_synchronized_statement): Re-write suing CLEANUP_POINT_EXPR and WITH_CLEANUP_EXPR instead of TRY_EXPR. From-SVN: r24406
Diffstat (limited to 'gcc/java/expr.c')
-rw-r--r--gcc/java/expr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/java/expr.c b/gcc/java/expr.c
index d669cb9..e07f84d 100644
--- a/gcc/java/expr.c
+++ b/gcc/java/expr.c
@@ -2191,6 +2191,7 @@ process_jvm_instruction (PC, byte_ops, length)
tree where = lookup_label (oldpc+OPERAND_VALUE); \
tree ret = lookup_label (PC); \
build_java_jsr (where, ret); \
+ load_type_state (ret); \
}
/* Push a constant onto the stack. */