From: Piotr Trojanek Date: Wed, 5 Aug 2020 22:53:11 +0000 (+0200) Subject: [Ada] Fix scope of index parameter inside a delta aggregate X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=70b590e2481f9a887009e51396727659f49b0def;p=gcc.git [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. --- 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;