aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ada/ChangeLog17
-rw-r--r--gcc/ada/impunit.adb4
-rw-r--r--gcc/ada/s-taenca.adb9
-rw-r--r--gcc/ada/s-tpobop.adb6
-rw-r--r--gcc/ada/sinput-p.ads4
5 files changed, 32 insertions, 8 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 6fb4d82..59562e6 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 24b94af..fe89924 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 fba7691..14812a4 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 f9ca610..0890181 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 8f925bb..112a6f7 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