From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1914) id ED365383A639; Tue, 5 Jul 2022 08:31:04 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org ED365383A639 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Pierre-Marie de Rodat To: gcc-cvs@gcc.gnu.org Subject: [gcc r13-1494] [Ada] Reorder processing of default expressions to avoid repeated calls X-Act-Checkin: gcc X-Git-Author: Piotr Trojanek X-Git-Refname: refs/heads/master X-Git-Oldrev: 076a6d13d1e07a72fb964579316920225829777c X-Git-Newrev: 6ba8c078cabee2c6abc669971e1351536ce721ec Message-Id: <20220705083104.ED365383A639@sourceware.org> Date: Tue, 5 Jul 2022 08:31:04 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Jul 2022 08:31:05 -0000 https://gcc.gnu.org/g:6ba8c078cabee2c6abc669971e1351536ce721ec commit r13-1494-g6ba8c078cabee2c6abc669971e1351536ce721ec Author: Piotr Trojanek Date: Wed Jun 8 20:49:57 2022 +0200 [Ada] Reorder processing of default expressions to avoid repeated calls Code cleanup related to improved detection of uninitialised objects; semantics is unaffected. gcc/ada/ * sem_ch6.adb (Process_Formals): Avoid repeated calls to Expression. Diff: --- gcc/ada/sem_ch6.adb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gcc/ada/sem_ch6.adb b/gcc/ada/sem_ch6.adb index 440770ad8bf..1efc8842db9 100644 --- a/gcc/ada/sem_ch6.adb +++ b/gcc/ada/sem_ch6.adb @@ -12985,10 +12985,10 @@ package body Sem_Ch6 is Set_Formal_Mode (Formal); if Ekind (Formal) = E_In_Parameter then - Set_Default_Value (Formal, Expression (Param_Spec)); + Default := Expression (Param_Spec); - if Present (Expression (Param_Spec)) then - Default := Expression (Param_Spec); + if Present (Default) then + Set_Default_Value (Formal, Default); if Is_Scalar_Type (Etype (Default)) then if Nkind (Parameter_Type (Param_Spec)) /=