aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/java-tree.h
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2004-06-29 16:18:46 +0000
committerAndrew Haley <aph@gcc.gnu.org>2004-06-29 16:18:46 +0000
commitba60e4754adc4181784207396de5abbd349d894f (patch)
tree406cc493b14a7dbe0721aae139686fc7c954a0cc /gcc/java/java-tree.h
parent9f6eb0f4dbc2b394976b52d72f57ea33e1ef6ddf (diff)
downloadgcc-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.h4
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);