From: Piotr Trojanek <troja...@adacore.com>

When overflow checks are eliminated using System.Bignums package, we must
check if secondary stack that is necessary for this package is available.

gcc/ada/ChangeLog:

        * checks.adb (Make_Bignum_Block): Check restriction No_Secondary_Stack.

Tested on x86_64-pc-linux-gnu, committed on master.

---
 gcc/ada/checks.adb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gcc/ada/checks.adb b/gcc/ada/checks.adb
index dfda0a6622b..a9bebee3e13 100644
--- a/gcc/ada/checks.adb
+++ b/gcc/ada/checks.adb
@@ -8948,6 +8948,8 @@ package body Checks is
    function Make_Bignum_Block (Loc : Source_Ptr) return Node_Id is
       M : constant Entity_Id := Make_Defining_Identifier (Loc, Name_uM);
    begin
+      Check_Restriction (No_Secondary_Stack, M);
+
       return
         Make_Block_Statement (Loc,
           Declarations               =>
-- 
2.43.0

Reply via email to