aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorPiotr Trojanek <trojanek@adacore.com>2022-06-08 20:49:57 +0200
committerPierre-Marie de Rodat <derodat@adacore.com>2022-07-05 08:28:20 +0000
commit6ba8c078cabee2c6abc669971e1351536ce721ec (patch)
treeff5948bee9c1f4fa56212b5ddf86968507af9a23 /gcc
parent076a6d13d1e07a72fb964579316920225829777c (diff)
downloadgcc-6ba8c078cabee2c6abc669971e1351536ce721ec.zip
gcc-6ba8c078cabee2c6abc669971e1351536ce721ec.tar.gz
gcc-6ba8c078cabee2c6abc669971e1351536ce721ec.tar.bz2
[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.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/sem_ch6.adb6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/ada/sem_ch6.adb b/gcc/ada/sem_ch6.adb
index 440770a..1efc884 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)) /=