OSDN Git Service

* except.c (enum eh_region_type): Add ERT_UNKNOWN.
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 17 Nov 2001 17:33:57 +0000 (17:33 +0000)
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 17 Nov 2001 17:33:57 +0000 (17:33 +0000)
(mark_eh_region, case ERT_UKNONW): New case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47123 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/except.c

index d520cda..9166e26 100644 (file)
@@ -1,3 +1,8 @@
+Sat Nov 17 12:06:31 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * except.c (enum eh_region_type): Add ERT_UNKNOWN.
+       (mark_eh_region, case ERT_UKNONW): New case.
+
 2001-11-17  Christopher Faylor  <cgf@redhat.com>
            Corinna Vinschen  <vinschen@redhat.com>
 
index 7ddb807..ad9b9f5 100644 (file)
@@ -128,7 +128,8 @@ struct eh_region
   /* Each region does exactly one thing.  */
   enum eh_region_type
   {
-    ERT_CLEANUP = 1,
+    ERT_UNKNOWN = 0,
+    ERT_CLEANUP,
     ERT_TRY,
     ERT_CATCH,
     ERT_ALLOWED_EXCEPTIONS,
@@ -478,6 +479,10 @@ mark_eh_region (region)
 
   switch (region->type)
     {
+    case ERT_UNKNOWN:
+      /* This can happen if a nested function is inside the body of a region
+        and we do a GC as part of processing it.  */
+      break;
     case ERT_CLEANUP:
       ggc_mark_tree (region->u.cleanup.exp);
       break;