]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[Ada] Do not indicate a pending abort if the task is already aborting
authorPatrick Bernardi <bernardi@adacore.com>
Thu, 28 Oct 2021 22:05:16 +0000 (18:05 -0400)
committerPierre-Marie de Rodat <derodat@adacore.com>
Tue, 9 Nov 2021 09:44:50 +0000 (09:44 +0000)
gcc/ada/

* libgnarl/s-tasini.adb (Check_Abort_Status): Don't return 1 if
the task is aborting.
* libgnarl/s-tasini.ads (Check_Abort_Status): Update comment.

gcc/ada/libgnarl/s-tasini.adb
gcc/ada/libgnarl/s-tasini.ads

index 9acfa4927d6be75caf2a49e895ce938c2fee6f46..8d242ee33c19f2cbf3745ee906af357d03053d83 100644 (file)
@@ -126,6 +126,7 @@ package body System.Tasking.Initialization is
       if Self_ID /= null
         and then Self_ID.Deferral_Level = 0
         and then Self_ID.Pending_ATC_Level < Self_ID.ATC_Nesting_Level
+        and then not Self_ID.Aborting
       then
          return 1;
       else
index f35df576e6824dfd978abf2a56f37b8f41d223e0..a551d246650f7112433d1b77dd96b07f4ec57739 100644 (file)
@@ -115,7 +115,7 @@ package System.Tasking.Initialization is
 
    function Check_Abort_Status return Integer;
    --  Returns Boolean'Pos (True) iff abort signal should raise
-   --  Standard'Abort_Signal. Only used by IRIX currently.
+   --  Standard'Abort_Signal. Only used by RTEMS currently.
 
    --------------------------
    -- Change Base Priority --