https://gcc.gnu.org/g:cb478e0a6f3a296e1c234a85fc0d45d633a0ff93

commit r15-267-gcb478e0a6f3a296e1c234a85fc0d45d633a0ff93
Author: Piotr Trojanek <troja...@adacore.com>
Date:   Wed Jan 10 18:48:04 2024 +0100

    ada: Fix calculation of tasks in null arrays
    
    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.

Diff:
---
 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);

Reply via email to