From 43151cfd6a3cbdfb2c452b5642c86581d06c125f Mon Sep 17 00:00:00 2001 From: Ed Schonberg Date: Wed, 18 Nov 2015 13:55:42 +0000 Subject: sem_ch4.adb (Try_Container_Indexing): When constructing the parameter list for the potentially overloaded calls to... 2015-11-18 Ed Schonberg * sem_ch4.adb (Try_Container_Indexing): When constructing the parameter list for the potentially overloaded calls to indexing functions, do not propagate overloadings if the actual is a named association: overloadings appear directly on the expression in the association. 2015-11-18 Ed Schonberg * sem_type.adb (Interface_Present_In_Ancestor): If the type is incomplete, the list of ancestors is found either on the full view or the non-limited view of the type. From-SVN: r230547 --- gcc/ada/sem_ch4.adb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'gcc/ada/sem_ch4.adb') diff --git a/gcc/ada/sem_ch4.adb b/gcc/ada/sem_ch4.adb index 9ac6f8f..94ecc23 100644 --- a/gcc/ada/sem_ch4.adb +++ b/gcc/ada/sem_ch4.adb @@ -7437,7 +7437,14 @@ package body Sem_Ch4 is Arg := First (Exprs); while Present (Arg) loop New_Arg := Relocate_Node (Arg); - Save_Interps (Arg, New_Arg); + + -- The arguments can be parameter associations, in which case the + -- explicit actual parameter carries the overloadings. + + if Nkind (New_Arg) /= N_Parameter_Association then + Save_Interps (Arg, New_Arg); + end if; + Append (New_Arg, Assoc); Next (Arg); end loop; -- cgit v1.1