From e22557ee955225b6a2d42215b5e07b22f18d88d2 Mon Sep 17 00:00:00 2001 From: Piotr Trojanek Date: Tue, 4 Aug 2020 17:47:39 +0200 Subject: [PATCH] [Ada] Use index parameter for iterated_component_association gcc/ada/ * sem_aggr.adb (Resolve_Iterated_Component_Association): Use existing defining identifier for index parameter. --- gcc/ada/sem_aggr.adb | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/gcc/ada/sem_aggr.adb b/gcc/ada/sem_aggr.adb index 7587295..cb49a25 100644 --- a/gcc/ada/sem_aggr.adb +++ b/gcc/ada/sem_aggr.adb @@ -1640,21 +1640,16 @@ package body Sem_Aggr is Set_Etype (Ent, Standard_Void_Type); Set_Parent (Ent, Parent (N)); Push_Scope (Ent); - Id := - Make_Defining_Identifier (Loc, - Chars => Chars (Defining_Identifier (N))); -- Insert and decorate the index variable in the current scope. -- The expression has to be analyzed once the index variable is - -- directly visible. Mark the variable as referenced to prevent - -- spurious warnings, given that subsequent uses of its name in the - -- expression will reference the internal (synonym) loop variable. + -- directly visible. + Id := Defining_Identifier (N); Enter_Name (Id); Set_Etype (Id, Index_Typ); Set_Ekind (Id, E_Variable); Set_Scope (Id, Ent); - Set_Referenced (Id); -- Analyze a copy of the expression, to verify legality. We use -- a copy because the expression will be analyzed anew when the -- 2.7.4