Index: exp_util.adb
===================================================================
--- exp_util.adb	(revision 194894)
+++ exp_util.adb	(working copy)
@@ -3138,7 +3138,7 @@
         and then not Is_Frozen (Current_Scope)
       then
          if No (Scope_Stack.Table
-           (Scope_Stack.Last).Pending_Freeze_Actions)
+                  (Scope_Stack.Last).Pending_Freeze_Actions)
          then
             Scope_Stack.Table (Scope_Stack.Last).Pending_Freeze_Actions :=
               Ins_Actions;
@@ -3306,13 +3306,13 @@
                return;
 
             --  Case of appearing within an Expressions_With_Actions node. We
-            --  prepend the actions to the list of actions already there, if
+            --  append the actions to the list of actions already there, if
             --  the node has not been analyzed yet. Otherwise find insertion
             --  location further up the tree.
 
             when N_Expression_With_Actions =>
                if not Analyzed (P) then
-                  Prepend_List (Ins_Actions, Actions (P));
+                  Append_List (Ins_Actions, Actions (P));
                   return;
                end if;
 
Index: exp_util.ads
===================================================================
--- exp_util.ads	(revision 194887)
+++ exp_util.ads	(working copy)
@@ -75,6 +75,9 @@
    --    expansion of the N_If_Expression node rewrites the node so that the
    --    actions can be positioned normally.
 
+   --    For actions coming from expansion of the expression in an expression
+   --    with actions node, the action is appended to the list of actions.
+
    --  Basically what we do is to climb up to the tree looking for the
    --  proper insertion point, as described by one of the above cases,
    --  and then insert the appropriate action or actions.
