From: Piotr Trojanek Date: Wed, 27 Oct 2021 18:58:37 +0000 (+0200) Subject: [Ada] Cleanup copying of parameter lists X-Git-Tag: basepoints/gcc-13~3282 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7751c73202f1f1336769607b0cd5cf516e29089a;p=thirdparty%2Fgcc.git [Ada] Cleanup copying of parameter lists gcc/ada/ * sem_util.adb (Copy_Parameter_List): Refactor to remove repeated calls to First_Formal. --- diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index 8785e2e140c2..bc51a60ccf2a 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -6797,14 +6797,11 @@ package body Sem_Util is function Copy_Parameter_List (Subp_Id : Entity_Id) return List_Id is Loc : constant Source_Ptr := Sloc (Subp_Id); Plist : List_Id; - Formal : Entity_Id; + Formal : Entity_Id := First_Formal (Subp_Id); begin - if No (First_Formal (Subp_Id)) then - return No_List; - else - Plist := New_List; - Formal := First_Formal (Subp_Id); + if Present (Formal) then + Plist := New_List; while Present (Formal) loop Append_To (Plist, Make_Parameter_Specification (Loc, @@ -6819,6 +6816,8 @@ package body Sem_Util is Next_Formal (Formal); end loop; + else + Plist := No_List; end if; return Plist;