OSDN Git Service

* except.c (expand_start_catch_block): Make sure the false label
authormrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 17 Oct 1994 23:01:46 +0000 (23:01 +0000)
committermrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 17 Oct 1994 23:01:46 +0000 (23:01 +0000)
        gets onto the permanent obstack, as it is used for the exception
        table.

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

gcc/cp/except.c

index fd50915..9821471 100644 (file)
@@ -1136,13 +1136,12 @@ expand_start_catch_block (declspecs, declarator)
   else
     type = NULL_TREE;
 
-  false_label_rtx = gen_label_rtx ();
-  push_label_entry (&false_label_stack, false_label_rtx);
-
-  /* This is saved for the exception table.  */
+  /* These are saved for the exception table.  */
   push_rtl_perm ();
+  false_label_rtx = gen_label_rtx ();
   protect_label_rtx = gen_label_rtx ();
   pop_rtl_from_perm ();
+  push_label_entry (&false_label_stack, false_label_rtx);
   push_label_entry (&false_label_stack, protect_label_rtx);
 
   if (type)