From 672dfc39f1dedd8b00fb10f6b7b01671b27c0f86 Mon Sep 17 00:00:00 2001 From: Piotr Trojanek Date: Thu, 24 May 2018 13:07:11 +0000 Subject: [PATCH] [Ada] Simplify routines with a local Result variable Local variable Result that is modified inside IF statements makes a seemingly trivial code slightly hard to understand. This patch rewrites such a pattern. Semantics unaffected. 2018-05-24 Piotr Trojanek gcc/ada/ * sem_elab.adb (Non_Private_View): Simplify by removing a local Result variable. * sem_prag.adb (Get_Base_Subprogram): Same as above. From-SVN: r260670 --- gcc/ada/ChangeLog | 6 ++++++ gcc/ada/sem_elab.adb | 12 ++++-------- gcc/ada/sem_prag.adb | 16 ++++++---------- 3 files changed, 16 insertions(+), 18 deletions(-) diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 5ebe69e..66dfa8e 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,9 @@ +2018-05-24 Piotr Trojanek + + * sem_elab.adb (Non_Private_View): Simplify by removing a local Result + variable. + * sem_prag.adb (Get_Base_Subprogram): Same as above. + 2018-05-24 Eric Botcazou * fe.h (Set_Normalized_First_Bit): Declare. diff --git a/gcc/ada/sem_elab.adb b/gcc/ada/sem_elab.adb index 9525f7f..e316995 100644 --- a/gcc/ada/sem_elab.adb +++ b/gcc/ada/sem_elab.adb @@ -8077,16 +8077,12 @@ package body Sem_Elab is ---------------------- function Non_Private_View (Typ : Entity_Id) return Entity_Id is - Result : Entity_Id; - begin - Result := Typ; - - if Is_Private_Type (Result) and then Present (Full_View (Result)) then - Result := Full_View (Result); + if Is_Private_Type (Typ) and then Present (Full_View (Typ)) then + return Full_View (Typ); + else + return Typ; end if; - - return Result; end Non_Private_View; ----------------------------- diff --git a/gcc/ada/sem_prag.adb b/gcc/ada/sem_prag.adb index c85d26f..cd46404 100644 --- a/gcc/ada/sem_prag.adb +++ b/gcc/ada/sem_prag.adb @@ -29765,23 +29765,19 @@ package body Sem_Prag is ------------------------- function Get_Base_Subprogram (Def_Id : Entity_Id) return Entity_Id is - Result : Entity_Id; - begin -- Follow subprogram renaming chain - Result := Def_Id; - - if Is_Subprogram (Result) + if Is_Subprogram (Def_Id) and then - Nkind (Parent (Declaration_Node (Result))) = + Nkind (Parent (Declaration_Node (Def_Id))) = N_Subprogram_Renaming_Declaration - and then Present (Alias (Result)) + and then Present (Alias (Def_Id)) then - Result := Alias (Result); + return Alias (Def_Id); + else + return Def_Id; end if; - - return Result; end Get_Base_Subprogram; ----------------------- -- 2.7.4