OSDN Git Service

* except.c (expand_end_catch_block): Fix typo.
authormmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 18 Nov 1999 17:52:27 +0000 (17:52 +0000)
committermmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 18 Nov 1999 17:52:27 +0000 (17:52 +0000)
(expand_exception_blocks): Simplify.  Don't call
expand_leftover_cleanups.

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

gcc/cp/ChangeLog
gcc/cp/except.c

index 9bdfe91..a8598e8 100644 (file)
@@ -1,3 +1,9 @@
+1999-11-18  Mark Mitchell  <mark@codesourcery.com>
+
+       * except.c (expand_end_catch_block): Fix typo.
+       (expand_exception_blocks): Simplify.  Don't call
+       expand_leftover_cleanups.
+
 1999-11-15  Jason Merrill  <jason@casey.cygnus.com>
 
        * cp-tree.h, decl.c (compute_array_index_type): Make nonstatic.
index 91a4407..eb8cf0e 100644 (file)
@@ -563,9 +563,9 @@ expand_end_catch_block (blocks)
     finish_expr_stmt (build_throw (NULL_TREE));
 
   /* Cleanup the EH parameter.  */
-  finish_compound_stmt (/*has_no_scope=*/0, compound_stmt_1);
-    /* Cleanup the EH object.  */
   finish_compound_stmt (/*has_no_scope=*/0, compound_stmt_2);
+    /* Cleanup the EH object.  */
+  finish_compound_stmt (/*has_no_scope=*/0, compound_stmt_1);
 }
 
 /* An exception spec is implemented more or less like:
@@ -656,11 +656,6 @@ void
 expand_exception_blocks ()
 {
   do_pending_stack_adjust ();
-  push_to_sequence (catch_clauses);
-  expand_leftover_cleanups ();
-  do_pending_stack_adjust ();
-  catch_clauses = get_insns ();
-  end_sequence ();
 
   if (catch_clauses)
     {
@@ -679,8 +674,8 @@ expand_exception_blocks ()
       if (exceptions_via_longjmp == 0)
        expand_eh_region_end (build_terminate_handler ());
 
-      expand_leftover_cleanups ();
-
+      emit_insns (catch_clauses);
+      catch_clauses = NULL_RTX;
       emit_label (funcend);
     }
 }