From 1fac57eec6739eb2e240f3817b0805580bd947fe Mon Sep 17 00:00:00 2001 From: bothner Date: Wed, 23 Dec 1998 10:46:45 +0000 Subject: 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@24406 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/java/expr.c | 1 + 1 file changed, 1 insertion(+) (limited to 'gcc/java/expr.c') diff --git a/gcc/java/expr.c b/gcc/java/expr.c index d669cb9bc17..e07f84d7f97 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. */ -- cgit v1.2.3