From 700cd7d6733e62e5ad8212cb6c51866679173b41 Mon Sep 17 00:00:00 2001 From: Eric Botcazou Date: Wed, 30 Mar 2022 12:59:23 +0200 Subject: [PATCH] [Ada] Small performance tweak in recent change This avoids a useless walk of the prefix chain in instances. gcc/ada/ * sem_ch8.adb (Analyze_Subprogram_Renaming): Move final test on In_Instance to outer condition. --- gcc/ada/sem_ch8.adb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gcc/ada/sem_ch8.adb b/gcc/ada/sem_ch8.adb index 1cf34117a30..5945bfdf90d 100644 --- a/gcc/ada/sem_ch8.adb +++ b/gcc/ada/sem_ch8.adb @@ -3975,7 +3975,7 @@ package body Sem_Ch8 is -- normally illegal renamings can be constructed when expanding -- instantiations. - elsif Nkind (Nam) = N_Expanded_Name then + elsif Nkind (Nam) = N_Expanded_Name and then not In_Instance then declare function Ult_Expanded_Prefix (N : Node_Id) return Node_Id is (if Nkind (N) /= N_Expanded_Name @@ -3985,7 +3985,6 @@ package body Sem_Ch8 is begin if Chars (Entity (Ult_Expanded_Prefix (Nam))) = Chars (New_S) - and then not In_Instance then Error_Msg_Sloc := Sloc (N); Error_Msg_NE -- 2.47.2