This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

PATCH to reachable_handlers


The region number in a RESX refers to the region it is jumping out of; that
region is not actually reachable from the RESX.

Applied to the trunk.

2001-04-24  Jason Merrill  <jason_merrill@redhat.com>

	* except.c (reachable_handlers): Step out one level from a RESX.

*** except.c.~1~	Fri Apr  6 17:11:24 2001
--- except.c	Tue Apr 24 00:58:51 2001
*************** reachable_handlers (insn)
*** 2709,2714 ****
--- 2720,2728 ----
        type_thrown = region->u.throw.type;
        region = region->outer;
      }
+   else if (GET_CODE (insn) == JUMP_INSN
+ 	   && GET_CODE (PATTERN (insn)) == RESX)
+     region = region->outer;
  
    for (; region; region = region->outer)
      if (reachable_next_level (region, type_thrown, &info) >= RNL_CAUGHT)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]