Commit 5dfa7520 by Jason Merrill Committed by Jason Merrill

* except.c (expand_end_all_catch): Fix for sjlj exceptions.

From-SVN: r16950
parent 4d7b7169
Thu Dec 4 11:51:00 1997 Jason Merrill <jason@yorick.cygnus.com>
* except.c (expand_end_all_catch): Fix for sjlj exceptions.
Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk> Thu Dec 4 12:30:40 1997 J"orn Rennecke <amylaar@cygnus.co.uk>
* sh.c (final_prescan_insn): Use local label prefix * sh.c (final_prescan_insn): Use local label prefix
......
...@@ -1390,16 +1390,19 @@ expand_start_all_catch () ...@@ -1390,16 +1390,19 @@ expand_start_all_catch ()
void void
expand_end_all_catch () expand_end_all_catch ()
{ {
rtx new_catch_clause, outer_context; rtx new_catch_clause, outer_context = NULL_RTX;
if (! doing_eh (1)) if (! doing_eh (1))
return; return;
outer_context = ehstack.top->entry->outer_context;
if (! exceptions_via_longjmp) if (! exceptions_via_longjmp)
/* Finish the rethrow region. size_zero_node is just a NOP. */ {
expand_eh_region_end (size_zero_node); outer_context = ehstack.top->entry->outer_context;
/* Finish the rethrow region. size_zero_node is just a NOP. */
expand_eh_region_end (size_zero_node);
}
/* Code to throw out to outer context, if we fall off end of catch /* Code to throw out to outer context, if we fall off end of catch
handlers. This is rethrow (Lresume, same id, same obj) in the handlers. This is rethrow (Lresume, same id, same obj) in the
documentation. We use Lresume because we know that it will throw documentation. We use Lresume because we know that it will throw
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment