diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-09-09 15:53:19 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-09-09 15:53:19 +0200 |
commit | 5fdc49eca660d130ec4815eb7a804aa7fd89773d (patch) | |
tree | e086c42c03e0ad00c16188e846a79c6649bb7102 /gcc/ada | |
parent | b100151b6d20180b9e11b259943fd8e63fdec865 (diff) | |
download | gcc-5fdc49eca660d130ec4815eb7a804aa7fd89773d.tar.gz |
[multiple changes]
2010-09-09 Robert Dewar <dewar@adacore.com>
* sinput-p.ads: Minor comment update.
2010-09-09 Arnaud Charlet <charlet@adacore.com>
* s-tpobop.adb, s-taenca.adb (Wait_For_Completion_With_Timeout): Reset
Entry_Call.State if needed so that the call is marked as cancelled by
Check_Pending_Actions_For_Entry_Call.
(Timed_Protected_Entry_Call): Adjust calls to Defer/Under_Abort, since
this procedure may be called from a controlled operation
(Initialize/Finalize).
2010-09-09 Vadim Godunko <godunko@adacore.com>
* impunit.adb: Correct spelling of package's name in the comment.
From-SVN: r164101
Diffstat (limited to 'gcc/ada')
-rw-r--r-- | gcc/ada/ChangeLog | 17 | ||||
-rw-r--r-- | gcc/ada/impunit.adb | 4 | ||||
-rw-r--r-- | gcc/ada/s-taenca.adb | 9 | ||||
-rw-r--r-- | gcc/ada/s-tpobop.adb | 6 | ||||
-rw-r--r-- | gcc/ada/sinput-p.ads | 4 |
5 files changed, 32 insertions, 8 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 6fb4d82854b..59562e60574 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,22 @@ 2010-09-09 Robert Dewar <dewar@adacore.com> + * sinput-p.ads: Minor comment update. + +2010-09-09 Arnaud Charlet <charlet@adacore.com> + + * s-tpobop.adb, s-taenca.adb (Wait_For_Completion_With_Timeout): Reset + Entry_Call.State if needed so that the call is marked as cancelled by + Check_Pending_Actions_For_Entry_Call. + (Timed_Protected_Entry_Call): Adjust calls to Defer/Under_Abort, since + this procedure may be called from a controlled operation + (Initialize/Finalize). + +2010-09-09 Vadim Godunko <godunko@adacore.com> + + * impunit.adb: Correct spelling of package's name in the comment. + +2010-09-09 Robert Dewar <dewar@adacore.com> + * gnatcmd.adb, gnatlink.adb, sem_ch12.adb, sem_eval.adb, sinput-p.adb: Minor reformatting diff --git a/gcc/ada/impunit.adb b/gcc/ada/impunit.adb index 24b94af2249..fe89924333e 100644 --- a/gcc/ada/impunit.adb +++ b/gcc/ada/impunit.adb @@ -55,7 +55,7 @@ package body Impunit is Non_Imp_File_Names_95 : constant File_List := ( ------------------------------------------------------ - -- Ada Hierarchy Units from Ada-83 Reference Manual -- + -- Ada Hierarchy Units from Ada-95 Reference Manual -- ------------------------------------------------------ "a-astaco", -- Ada.Asynchronous_Task_Control @@ -395,7 +395,7 @@ package body Impunit is "a-envvar", -- Ada.Environment_Variables "a-exetim", -- Ada.Execution_Time "a-extiti", -- Ada.Execution_Time.Timers - "a-izteio", -- Ada.Integer_Wide_Wide_TextIO; + "a-izteio", -- Ada.Integer_Wide_Wide_Text_IO "a-rttiev", -- Ada.Real_Time.Timing_Events "a-ngcoar", -- Ada.Numerics.Generic_Complex_Arrays "a-ngrear", -- Ada.Numerics.Generic_Real_Arrays diff --git a/gcc/ada/s-taenca.adb b/gcc/ada/s-taenca.adb index fba7691e3a2..14812a4464d 100644 --- a/gcc/ada/s-taenca.adb +++ b/gcc/ada/s-taenca.adb @@ -6,7 +6,7 @@ -- -- -- B o d y -- -- -- --- Copyright (C) 1992-2009, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2010, Free Software Foundation, Inc. -- -- -- -- GNARL is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -590,6 +590,13 @@ package body System.Tasking.Entry_Calls is Entry_Call.Cancellation_Attempted := True; + -- Reset Entry_Call.State so that the call is marked as cancelled + -- by Check_Pending_Actions_For_Entry_Call below. + + if Entry_Call.State < Was_Abortable then + Entry_Call.State := Now_Abortable; + end if; + if Self_Id.Pending_ATC_Level >= Entry_Call.Level then Self_Id.Pending_ATC_Level := Entry_Call.Level - 1; end if; diff --git a/gcc/ada/s-tpobop.adb b/gcc/ada/s-tpobop.adb index f9ca610a060..0890181544d 100644 --- a/gcc/ada/s-tpobop.adb +++ b/gcc/ada/s-tpobop.adb @@ -958,7 +958,7 @@ package body System.Tasking.Protected_Objects.Operations is Send_Trace_Info (POT_Call, Entry_Index (E), Timeout); end if; - Initialization.Defer_Abort (Self_Id); + Initialization.Defer_Abort_Nestable (Self_Id); Lock_Entries (Object, Ceiling_Violation); if Ceiling_Violation then @@ -1009,7 +1009,7 @@ package body System.Tasking.Protected_Objects.Operations is end if; Entry_Call_Successful := Entry_Call.State = Done; - Initialization.Undefer_Abort (Self_Id); + Initialization.Undefer_Abort_Nestable (Self_Id); Entry_Calls.Check_Exception (Self_Id, Entry_Call); return; end if; @@ -1025,7 +1025,7 @@ package body System.Tasking.Protected_Objects.Operations is -- ??? Do we need to yield in case Yielded is False - Initialization.Undefer_Abort (Self_Id); + Initialization.Undefer_Abort_Nestable (Self_Id); Entry_Call_Successful := Entry_Call.State = Done; Entry_Calls.Check_Exception (Self_Id, Entry_Call); end Timed_Protected_Entry_Call; diff --git a/gcc/ada/sinput-p.ads b/gcc/ada/sinput-p.ads index 8f925bbc9a0..112a6f7d5da 100644 --- a/gcc/ada/sinput-p.ads +++ b/gcc/ada/sinput-p.ads @@ -6,7 +6,7 @@ -- -- -- S p e c -- -- -- --- Copyright (C) 1992-2008, Free Software Foundation, Inc. -- +-- Copyright (C) 1992-2010, Free Software Foundation, Inc. -- -- -- -- GNAT is free software; you can redistribute it and/or modify it under -- -- terms of the GNU General Public License as published by the Free Soft- -- @@ -54,7 +54,7 @@ package Sinput.P is -- the file cannot possibly be a legal subunit. This function does NOT do a -- complete parse of the file, or build a tree. It is used in gnatmake and -- gprbuild to decide if a body without a spec in a project file needs to - -- be compiled or not. + -- be compiled or not. Returns False if X = No_Source_File. type Saved_Project_Scan_State is limited private; -- Used to save project scan state in following two routines |