CVS difference for ais/ai-00394.txt

Differences between 1.3 and version 1.4
Log of other versions for file ais/ai-00394.txt

--- ais/ai-00394.txt	2005/04/13 05:37:20	1.3
+++ ais/ai-00394.txt	2005/09/22 04:26:40	1.4
@@ -1,10 +1,12 @@
-!standard D.07(09)                                    05-03-01  AI95-00394/03
+!standard D.07(09)                                    05-09-20  AI95-00394/04
 !standard D.07(10)
 !standard D.07(15)
 !standard D.13.1(01)
 !standard H.4(2)
+!standard H.4(3)
 !standard H.4(9)
 !standard H.4(16)
+!standard H.4(23)
 !standard J.13(1)
 !class amendment 05-01-20
 !status Amendment 200Y 05-02-25
@@ -48,10 +50,13 @@
 restriction a new restrictions identifier is defined:
 No_Specific_Termination_Handlers.
 
-Finally, to make it clear that if a Ravenscar task does terminate the fall-back
+To make it clear that if a Ravenscar task does terminate the fall-back
 handler (if there is one) will be executed, the definition of
 No_Task_Termination is modified.
 
+Finally, it was noted that the phrase "restriction xxx apply in this Annex"
+doesn't make much sense.  The wording was revised to eliminate this phrase.
+
 !proposal
 
 (See wording.)
@@ -88,12 +93,29 @@
    Semantic dependence on Unchecked_Deallocation is not allowed.
 
 
+Delete H.4(2).
+
+
+Change H.4(3) to read:
+
+The following restriction_identifiers are language defined:
 
-Add the following to the end of H.4(2):
 
-The following uses of restriction identifier No_Dependence apply in this
-Annex: No_Dependence => Ada.Unchecked_Deallocation and No_Dependence => Ada.Unchecked_Conversion.
+Add the following before H.4(24):
 
+An implementation of this Annex shall support:
+o  the restrictions defined in this subclause; and
+o  the following uses of restriction identifier No_Dependence defined in
+13.12.1:    No_Dependence => Ada.Unchecked_Deallocation and
+   No_Dependence => Ada.Unchecked_Conversion; and
+o  the following restrictions defined in D.7: No_Task_Hierarchy,
+No_Abort_Statement,
+   No_Implicit_Heap_Allocation; and
+o  the following uses of restriction identifiers defined in D.7, which are
+checked    prior to program execution: Max_Task_Entries => 0,
+Max_Asynchronous_Select_Nesting => 0,
+   and Max_Tasks => 0; and
+o  the pragma Profile(Ravenscar).
 
 Add the following new static restriction_identifier after D.7(10):
 
@@ -239,19 +261,18 @@
 
 !corrigendum H.4(2)
 
-@drepl
+@ddel
 The following restrictions, the same as in D.7, apply in this Annex:
 No_Task_Hierarchy, No_Abort_Statement, No_Implicit_Heap_Allocation,
 Max_Task_Entries is 0, Max_Asynchronous_Select_Nesting is 0, and Max_Tasks is
 0. The last three restrictions are checked prior to program execution.
+
+!corrigendum H.4(3)
+
+@drepl
+The following additional restrictions apply in this Annex.
 @dby
-The following restrictions, the same as in D.7, apply in this Annex:
-No_Task_Hierarchy, No_Abort_Statement, No_Implicit_Heap_Allocation,
-Max_Task_Entries is 0, Max_Asynchronous_Select_Nesting is 0, and Max_Tasks is
-0. The last three restrictions are checked prior to program execution.
-The following uses of restriction identifier No_Dependence apply in this
-Annex: No_Dependence =@> Ada.Unchecked_Deallocation and No_Dependence =@>
-Ada.Unchecked_Conversion.
+The following @i<restriction>_@fa<identifiers> are language defined:
 
 !corrigendum H.4(9)
 
@@ -265,6 +286,26 @@
 @xhang<@xterm<No_Unchecked_Conversion>
 Semantic dependence on the predefined generic Unchecked_Conversion is not
 allowed.>
+
+!corrigendum H.4(24)
+
+@dinsb
+If an implementation supports pragma Restrictions for a particular argument,
+then except for the restrictions No_Unchecked_Deallocation,
+No_Unchecked_Conversion, No_Access_Subprograms, and No_Unchecked_Access, the
+associated restriction applies to the run-time system.
+@dinst
+An implementation of this Annex shall support:
+@xbullet<the restrictions defined in this subclause; and>
+@xbullet<the following uses of restriction identifier No_Dependence defined in
+13.12.1: No_Dependence => Ada.Unchecked_Deallocation and No_Dependence =>
+Ada.Unchecked_Conversion; and>
+@xbullet<the following restrictions defined in D.7: No_Task_Hierarchy,
+No_Abort_Statement, No_Implicit_Heap_Allocation; and>
+@xbullet<the following uses of restriction identifiers defined in D.7, which are
+checked prior to program execution: Max_Task_Entries => 0,
+Max_Asynchronous_Select_Nesting => 0, and Max_Tasks => 0; and>
+@xbullet<the @b<pragma> Profile(Ravenscar).>
 
 !corrigendum J.13(1)
 

Questions? Ask the ACAA Technical Agent