===================================================================
@@ -17050,6 +17050,7 @@
if Ada_Version >= Ada_2005
and then Present (First_Formal (E))
and then No (Default_Value (First_Formal (E)))
+ and then Is_Controlling_Formal (First_Formal (E))
then
Formal := Next_Formal (First_Formal (E));
while Present (Formal) loop
===================================================================
@@ -2012,9 +2012,10 @@
-- entity E. If no such instance exits, return Empty.
function Needs_One_Actual (E : Entity_Id) return Boolean;
- -- Returns True if a function has defaults for all but its first
- -- formal. Used in Ada 2005 mode to solve the syntactic ambiguity that
- -- results from an indexing of a function call written in prefix form.
+ -- Returns True if a function has defaults for all but its first formal,
+ -- which is a controlling formal. Used in Ada 2005 mode to solve the
+ -- syntactic ambiguity that results from an indexing of a function call
+ -- that returns an array, so that Obj.F (X, Y) may mean F (Ob) (X, Y).
function New_Copy_List_Tree (List : List_Id) return List_Id;
-- Copy recursively an analyzed list of nodes. Uses New_Copy_Tree defined