diff options
author | Andrew Haley <aph@redhat.com> | 2004-06-29 16:18:46 +0000 |
---|---|---|
committer | Andrew Haley <aph@gcc.gnu.org> | 2004-06-29 16:18:46 +0000 |
commit | ba60e4754adc4181784207396de5abbd349d894f (patch) | |
tree | 406cc493b14a7dbe0721aae139686fc7c954a0cc /gcc/java/java-tree.h | |
parent | 9f6eb0f4dbc2b394976b52d72f57ea33e1ef6ddf (diff) | |
download | gcc-ba60e4754adc4181784207396de5abbd349d894f.zip gcc-ba60e4754adc4181784207396de5abbd349d894f.tar.gz gcc-ba60e4754adc4181784207396de5abbd349d894f.tar.bz2 |
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
Diffstat (limited to 'gcc/java/java-tree.h')
-rw-r--r-- | gcc/java/java-tree.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/java/java-tree.h b/gcc/java/java-tree.h index 64c0778..1089e59 100644 --- a/gcc/java/java-tree.h +++ b/gcc/java/java-tree.h @@ -1117,6 +1117,9 @@ struct lang_type GTY(()) #define SEARCH_SUPER 2 #define SEARCH_VISIBLE 4 +/* Defined in java-except.h */ +struct eh_range; + extern void java_parse_file (int); extern bool java_mark_addressable (tree); extern tree java_type_for_mode (enum machine_mode, int); @@ -1345,6 +1348,7 @@ extern tree add_stmt_to_compound (tree, tree, tree); extern tree java_add_stmt (tree); extern tree java_add_local_var (tree decl); extern tree *get_stmts (void); +extern void register_exception_range(struct eh_range *, int, int); extern void finish_method (tree); extern void java_expand_body (tree); |