From: Piotr Trojanek <troja...@adacore.com> Fix handling of null arrays when calculating the secondary stack size for the binder.
gcc/ada/ * sem_util.adb (Number_Of_Elements_In_Array): Fix counting of elements in null arrays; remove redundant parenthesis; avoid run-time conversion of 1 to universal integer. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/sem_util.adb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index bee078e6df5..5f44b4c26fe 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -25404,7 +25404,8 @@ package body Sem_Util is return 0; else Num := - Num * UI_To_Int ((Expr_Value (High) - Expr_Value (Low) + 1)); + Num * Int'Max + (0, UI_To_Int (Expr_Value (High) - Expr_Value (Low) + Uint_1)); end if; Next_Index (Indx); -- 2.43.2