From: Piotr Trojanek Date: Tue, 16 Jan 2024 12:05:22 +0000 (+0100) Subject: ada: Reduce scope in the analysis of access attributes X-Git-Tag: basepoints/gcc-16~9294 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a1e6fdc0773bd9d7e7a2e2a9135c2c6c982b67af;p=thirdparty%2Fgcc.git ada: Reduce scope in the analysis of access attributes Code cleanup; semantics is unaffected. gcc/ada/ * sem_attr.adb (Analyze_Access_Attribute): Move code to IF branch where its result is used. --- diff --git a/gcc/ada/sem_attr.adb b/gcc/ada/sem_attr.adb index c17f67356ef..6140cc0c0d6 100644 --- a/gcc/ada/sem_attr.adb +++ b/gcc/ada/sem_attr.adb @@ -982,15 +982,16 @@ package body Sem_Attr is if Is_Entity_Name (P) then Typ := Entity (P); - -- The reference may appear in an aggregate that has been expanded - -- into a loop. Locate scope of type definition, if any. + if Is_Type (Typ) then - Scop := Current_Scope; - while Ekind (Scop) = E_Loop loop - Scop := Scope (Scop); - end loop; + -- The reference may appear in an aggregate that has been + -- expanded into a loop. Locate scope of type definition, + -- if any. - if Is_Type (Typ) then + Scop := Current_Scope; + while Ekind (Scop) = E_Loop loop + Scop := Scope (Scop); + end loop; -- OK if we are within the scope of a limited type -- let's mark the component as having per object constraint