aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog6
-rw-r--r--gcc/ada/sem_util.adb9
2 files changed, 12 insertions, 3 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 6f261db..0095f85 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,9 @@
+2018-05-25 Piotr Trojanek <trojanek@adacore.com>
+
+ * sem_util.adb (Iterate_Call_Parameters): Rewrite with extra
+ assertions; replace function versions of Next_Formal/Next_Actual with
+ their procedural versions (which are more concise).
+
2018-05-25 Doug Rupp <rupp@adacore.com>
* libgnarl/s-osinte__aix.ads, libgnarl/s-osinte__android.ads,
diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb
index d205e58..08ed9bf 100644
--- a/gcc/ada/sem_util.adb
+++ b/gcc/ada/sem_util.adb
@@ -17882,11 +17882,14 @@ package body Sem_Util is
Actual : Node_Id := First_Actual (Call);
begin
- while Present (Formal) and then Present (Actual) loop
+ while Present (Formal) loop
+ pragma Assert (Present (Formal));
Handle_Parameter (Formal, Actual);
- Formal := Next_Formal (Formal);
- Actual := Next_Actual (Actual);
+ Next_Formal (Formal);
+ Next_Actual (Actual);
end loop;
+
+ pragma Assert (No (Actual));
end Iterate_Call_Parameters;
---------------------------