(expand_function_start): Emit queue after expanding
authorJim Wilson <wilson@gcc.gnu.org>
Thu, 3 Apr 1997 20:26:33 +0000 (12:26 -0800)
committerJim Wilson <wilson@gcc.gnu.org>
Thu, 3 Apr 1997 20:26:33 +0000 (12:26 -0800)
each dynamic parameter type.

From-SVN: r13835

gcc/function.c

index 67594cb..e9e99fe 100644 (file)
@@ -5389,7 +5389,12 @@ expand_function_start (subr, parms_have_cleanups)
 
   /* Evaluate now the sizes of any types declared among the arguments.  */
   for (tem = nreverse (get_pending_sizes ()); tem; tem = TREE_CHAIN (tem))
-    expand_expr (TREE_VALUE (tem), const0_rtx, VOIDmode, 0);
+    {
+      expand_expr (TREE_VALUE (tem), const0_rtx, VOIDmode, 0);
+      /* Flush the queue in case this parameter declaration has
+        side-effects.  */
+      emit_queue ();
+    }
 
   /* Make sure there is a line number after the function entry setup code.  */
   force_next_line_note ();