re PR java/1208 (Gcj can't compile a class file it generates.)
authorPer Bothner <per@bothner.com>
Sat, 24 Mar 2001 01:13:30 +0000 (17:13 -0800)
committerPer Bothner <bothner@gcc.gnu.org>
Sat, 24 Mar 2001 01:13:30 +0000 (17:13 -0800)
commitfa029f453a551f13f36cd997618629998696849e
treeb1eef7b31ca3d14d2d241bc45c3318313375f660
parent3c45ffa5146a7132ea4867981f0d2a737d656e54
re PR java/1208 (Gcj can't compile a class file it generates.)

e
* verify.c (verify_jvm_instructions):  Replace 3 pop_type by POP_TYPE
macro for better error pin-pointing.
* java-tree.h:  Fix typo in comment.

* jcf-write.c (generate_bytecode_insns):  Changes to TRY_FINALLY_EXPR.
Don't include jsr/goto in exception range.
Check if start and end of exception range are the same (also TRY_EXPR).
Don't emit jsr after try_block if CAN_COMPLETE_NORMALLY is false.
However, do emit the following goto even if try_block is empty.
Defer freeing exception_decl until after the finalizer, to make
sure the local isn't reused in the finalizer.  Fixes PR java/1208.

* parse.y (java_complete_lhs):  If the try-clause is empty, just
return the finally-clause and vice versa.

From-SVN: r40801
gcc/java/ChangeLog
gcc/java/java-tree.h
gcc/java/jcf-write.c
gcc/java/parse.y
gcc/java/verify.c