OSDN Git Service

2010-09-09 Robert Dewar <dewar@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 9 Sep 2010 13:53:19 +0000 (13:53 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 9 Sep 2010 13:53:19 +0000 (13:53 +0000)
* 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164101 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/ChangeLog
gcc/ada/impunit.adb
gcc/ada/s-taenca.adb
gcc/ada/s-tpobop.adb
gcc/ada/sinput-p.ads

index 6fb4d82..59562e6 100644 (file)
@@ -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
 
index 24b94af..fe89924 100644 (file)
@@ -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
index fba7691..14812a4 100644 (file)
@@ -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;
index f9ca610..0890181 100644 (file)
@@ -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;
index 8f925bb..112a6f7 100644 (file)
@@ -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