except.c (expand_start_java_handler): Push a new binding level.
authorAndrew Haley <aph@redhat.com>
Tue, 29 Jun 2004 16:18:46 +0000 (16:18 +0000)
committerAndrew Haley <aph@gcc.gnu.org>
Tue, 29 Jun 2004 16:18:46 +0000 (16:18 +0000)
commitba60e4754adc4181784207396de5abbd349d894f
tree406cc493b14a7dbe0721aae139686fc7c954a0cc
parent9f6eb0f4dbc2b394976b52d72f57ea33e1ef6ddf
except.c (expand_start_java_handler): Push a new binding level.

2004-06-29  Andrew Haley  <aph@redhat.com>

        * except.c (expand_start_java_handler): Push a new binding level.
        Don't build a TRY_CATCH_EXPR now, we'll do it later.  Call
        register_exception_range() to register where we'll do it.
        (expand_end_java_handler): Remove old bogus code.  Replace with
        new logic that simply builds TRY_CATCH_EXPRs and inserts them at
        the top of the expression we're curently building.
        (maybe_end_try): Delete.
        * decl.c (binding_level.exception_range): New field.
        (clear_binding_level): Add field exception_range.  Reformat.
        (poplevel): Call expand_end_java_handler().
        (poplevel): Call java_add_stmt only if functionbody is false.
        (maybe_poplevels): Don't call maybe_end_try() from here.
        (end_java_method): Clear no longer used trees in function decl.
        (register_exception_range): New function.
        * java-tree.h (register_exception_range, struct eh_range): Declare.

From-SVN: r83857
gcc/java/ChangeLog
gcc/java/decl.c
gcc/java/except.c
gcc/java/java-except.h
gcc/java/java-tree.h