diff options
author | loewis <loewis@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-03-19 18:25:27 +0000 |
---|---|---|
committer | loewis <loewis@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-03-19 18:25:27 +0000 |
commit | 78147e84503de46c41e27d1c461a37fcaf37a25f (patch) | |
tree | 741fb4699c20e2b971024d7d050b856266030a84 /gcc/cp/except.c | |
parent | f2d8342774dcc55765530e12f7f6914963b9d1b7 (diff) | |
download | ppe42-gcc-78147e84503de46c41e27d1c461a37fcaf37a25f.tar.gz ppe42-gcc-78147e84503de46c41e27d1c461a37fcaf37a25f.zip |
* emit-rtl.c (push_to_full_sequence, end_full_sequence): New functions.
* except.c (emit_cleanup_handler): Use them.
(expand_end_all_catch): Likewise.
* function.c (fixup_var_refs): Likewise.
(expand_function_end): Clear catch_clauses_last.
* rtl.h (push_to_full_sequence, end_full_sequence): Declare.
* except.h (struct eh_status): New field x_catch_clauses_last.
(catch_clauses_last): New define.
* cp/except.c (expand_exception_blocks): Clear catch_clauses_last.
* java/except.c (emit_handlers): Clear catch_clauses_last.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32643 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/except.c')
-rw-r--r-- | gcc/cp/except.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/cp/except.c b/gcc/cp/except.c index 12523dcc20b..8e32659a302 100644 --- a/gcc/cp/except.c +++ b/gcc/cp/except.c @@ -796,13 +796,13 @@ expand_exception_blocks () expand_eh_region_start (); emit_insns (catch_clauses); - catch_clauses = NULL_RTX; + catch_clauses = catch_clauses_last = NULL_RTX; if (exceptions_via_longjmp == 0) expand_eh_region_end (build_terminate_handler ()); emit_insns (catch_clauses); - catch_clauses = NULL_RTX; + catch_clauses = catch_clauses_last = NULL_RTX; emit_label (funcend); } } |