From 70b590e2481f9a887009e51396727659f49b0def Mon Sep 17 00:00:00 2001 From: Piotr Trojanek Date: Thu, 6 Aug 2020 00:53:11 +0200 Subject: [PATCH] [Ada] Fix scope of index parameter inside a delta aggregate gcc/ada/ * sem_aggr.adb (Resolve_Delta_Array_Aggregate): Push scope of the implicit loop before entering name of the index parameter, not after; enter name no matter if the identifier has been decorated before. --- gcc/ada/sem_aggr.adb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/ada/sem_aggr.adb b/gcc/ada/sem_aggr.adb index 688937e19e9..d6d0083b258 100644 --- a/gcc/ada/sem_aggr.adb +++ b/gcc/ada/sem_aggr.adb @@ -3052,15 +3052,15 @@ package body Sem_Aggr is begin Set_Etype (Ent, Standard_Void_Type); Set_Parent (Ent, Assoc); + Push_Scope (Ent); if No (Scope (Id)) then - Enter_Name (Id); Set_Etype (Id, Index_Type); Set_Ekind (Id, E_Variable); Set_Scope (Id, Ent); end if; + Enter_Name (Id); - Push_Scope (Ent); Analyze_And_Resolve (New_Copy_Tree (Expression (Assoc)), Component_Type (Typ)); End_Scope; -- 2.30.2