CVS difference for ais/ai-00357.txt

Differences between 1.17 and version 1.18
Log of other versions for file ais/ai-00357.txt

--- ais/ai-00357.txt	2005/08/21 06:00:33	1.17
+++ ais/ai-00357.txt	2005/10/31 05:18:36	1.18
@@ -1,4 +1,5 @@
-!standard D.02.6 (01)                                 05-06-20  AI95-00357/10
+!standard D.02.6 (01)                                 05-10-01  AI95-00357/11
+!standard D.01 (20)
 !class amendment 03-09-27
 !status Amendment 200Y 04-12-02
 !status ARG Approved 10-0-0  04-11-20
@@ -157,13 +158,13 @@
   subtype Deadline is Ada.Real_Time.Time;
   Default_Deadline : constant Deadline :=
               Ada.Real_Time.Time_Last;
-  procedure Set_Deadline(D : in Deadline;
-              T : in Ada.Task_Identification.Task_ID :=
+  procedure Set_Deadline (D : in Deadline;
+              T : in Ada.Task_Identification.Task_Id :=
               Ada.Task_Identification.Current_Task);
-  procedure Delay_Until_And_Set_Deadline(
+  procedure Delay_Until_And_Set_Deadline (
               Delay_Until_Time : in Ada.Real_Time.Time;
               Deadline_Offset : in Ada.Real_Time.Time_Span);
-  function Get_Deadline(T : in Ada.Task_Identification.Task_ID :=
+  function Get_Deadline (T : in Ada.Task_Identification.Task_Id :=
               Ada.Task_Identification.Current_Task) return Deadline;
 end Ada.Dispatching.EDF;
 
@@ -206,7 +207,7 @@
 
 On a system with a single processor, the setting of a task's deadline
 to the new value occurs immediately at the first point that is outside the
-execution of an abort-deferred operation. If the task is currently on a ready
+execution of a protected action. If the task is currently on a ready
 queue it is removed and re-entered on to the ready queue determined by the
 rules defined below.
 
@@ -261,9 +262,9 @@
 as EDF_Across_Priorities, the task is added to the ready queue
 corresponding to its new active priority, as determined above.
 
-For all the operations defined in this package, Tasking_Error
+For all the operations defined in Ada.Dispatching.EDF, Tasking_Error
 is raised if the task identified by T has terminated. Program_Error
-is raised if the value of T is Null_Task_ID.
+is raised if the value of T is Null_Task_Id.
 
 Bounded (Run-Time) Error
 
@@ -275,7 +276,7 @@
 
 Erroneous Execution
 
-If a value of Task_ID is passed as a parameter to any of the subprograms
+If a value of Task_Id is passed as a parameter to any of the subprograms
 of this package and the corresponding task object no longer exists,
 the execution of the program is erroneous.
 
@@ -302,6 +303,13 @@
 absolute deadline with an alternative measure of urgency.
 
 
+Replace D.1(20) by:
+
+At any time, the active priority of a task is the maximum of all the priorities
+the task is inheriting at that instant. Sources of
+priority inheritance are specified under the following conditions:
+
+
 !discussion
 
 The addition of procedure Delay_and_Set_Relative_Deadline reflects
@@ -355,6 +363,18 @@
 at the front of its ready queue even if its deadline is later than
 the next task on the queue.
 
+!corrigendum D.1(20)
+
+@drepl
+At any time, the active priority of a task is the maximum of all the priorities
+the task is inheriting at that instant. For a task that is not held (see D.11),
+its base priority is always a source of priority inheritance. Other sources of
+priority inheritance are specified under the following conditions:
+@dby
+At any time, the active priority of a task is the maximum of all the priorities
+the task is inheriting at that instant. Sources of
+priority inheritance are specified under the following conditions:
+
 !corrigendum D.2.6(1)
 
 @dinsc
@@ -369,7 +389,7 @@
 
 @i<@s8<Syntax>>
 
-The form of a pragma Relative_Deadline is as follows:
+The form of a @fa<pragma> Relative_Deadline is as follows:
 
 @xindent<@b<pragma> Relative_Deadline (@i<relative_deadline_>@fa<expression>);>
 
@@ -396,13 +416,13 @@
   @b<subtype> Deadline @b<is> Ada.Real_Time.Time;
   Default_Deadline : @b<constant> Deadline :=
               Ada.Real_Time.Time_Last;
-  @b<procedure> Set_Deadline(D : @b<in> Deadline;
-              T : @b<in> Ada.Task_Identification.Task_ID :=
+  @b<procedure> Set_Deadline (D : @b<in> Deadline;
+              T : @b<in> Ada.Task_Identification.Task_Id :=
               Ada.Task_Identification.Current_Task);
-  @b<procedure> Delay_Until_And_Set_Deadline(
+  @b<procedure> Delay_Until_And_Set_Deadline (
               Delay_Until_Time : @b<in> Ada.Real_Time.Time;
               Deadline_Offset : @b<in> Ada.Real_Time.Time_Span);
-  @b<function> Get_Deadline(T : @b<in> Ada.Task_Identification.Task_ID :=
+  @b<function> Get_Deadline (T : @b<in> Ada.Task_Identification.Task_Id :=
               Ada.Task_Identification.Current_Task) @b<return> Deadline;
 @b<end> Ada.Dispatching.EDF;>
 
@@ -419,8 +439,9 @@
 
 @i<@s8<Dynamic Semantics>>
 
-A Relative_Deadline pragma has no effect if it occurs in the declarative_part
-of the subprogram_body of a subprogram other than the main subprogram.
+A Relative_Deadline pragma has no effect if it occurs in the
+@fa<declarative_part> of the @fa<subprogram_body> of a subprogram other than
+the main subprogram.
 
 The initial absolute deadline of a task containing pragma Relative_Deadline
 is the value of Real_Time.Clock + @i<relative_deadline_>@fa<expression>,
@@ -438,7 +459,7 @@
 
 On a system with a single processor, the setting of a task's deadline
 to the new value occurs immediately at the first point that is outside the
-execution of an abort-deferred operation. If the task is currently on a ready
+execution of a protected action. If the task is currently on a ready
 queue it is removed and re-entered on to the ready queue determined by the
 rules defined below.
 
@@ -451,8 +472,8 @@
 
 @xbullet<a change to the deadline of @i<T> occurs;>
 
-@xbullet<there is a task on the ready queue for the active priority of T with a
-deadline earlier than the deadline of T; or>
+@xbullet<there is a task on the ready queue for the active priority of @i<T>
+with a deadline earlier than the deadline of @i<T>; or>
 
 @xbullet<there is a non-empty ready queue for that processor
 with a higher priority than the active priority of the running task.>
@@ -485,9 +506,9 @@
 as EDF_Across_Priorities, the task is added to the ready queue
 corresponding to its new active priority, as determined above.
 
-For all the operations defined in this package, Tasking_Error
+For all the operations defined in Ada.Dispatching.EDF, Tasking_Error
 is raised if the task identified by T has terminated. Program_Error
-is raised if the value of T is Null_Task_ID.
+is raised if the value of T is Null_Task_Id.
 
 @i<@s8<Bounded (Run-Time) Errors>>
 
@@ -499,7 +520,7 @@
 
 @i<@s8<Erroneous Execution>>
 
-If a value of Task_ID is passed as a parameter to any of the subprograms
+If a value of Task_Id is passed as a parameter to any of the subprograms
 of this package and the corresponding task object no longer exists,
 the execution of the program is erroneous.
 

Questions? Ask the ACAA Technical Agent