CVS difference for ais/ai-00249.txt
--- ais/ai-00249.txt 2001/07/14 00:01:48 1.4
+++ ais/ai-00249.txt 2002/06/14 23:48:55 1.5
@@ -1,4 +1,4 @@
-!standard D.2.2 (5) 01-06-04 AI95-00249/03
+!standard D.2.2 (5) 02-06-11 AI95-00249/04
!standard D.7 (00)
!class amendment 00-12-04
!status work item 00-12-04
@@ -43,10 +43,12 @@
pragma Profile (profile_identifier [profile_argument_definition]);
The profile_identifier shall be either Ravenscar or an implementation-defined
+identifier. For profile_identifier Ravenscar, there shall be no
+profile_argument_definition. For other profile_identifiers, the semantics
+of the profile_argument_definition are implementation-defined.
-Pragma Profile is a configuration pragma. It is equivalent to the set of
-pragmas that are defined below. There may be more than one pragma Profile for
+Pragma Profile is a configuration pragma. It is equivalent to the set of
+pragmas that are defined below. There may be more than one pragma Profile for
@@ -56,12 +58,12 @@
1.1. Task Dispatching Policy
-The default Task_Dispatching_Policy for the active partition shall be
+The Task_Dispatching_Policy for the active partition shall be
1.2. Locking Policy
-The default Locking_Policy for the active partition shall be Ceiling_Locking.
+The Locking_Policy for the active partition shall be Ceiling_Locking.
1.3. Restrictions Pragma
@@ -90,7 +92,7 @@
an entry. Violation of this restriction results in the raising of Program_Error
exception at the point of the call.
-For the Ravenscar Profile, the value of N is 1. Note that the affect of this
+For the Ravenscar Profile, the value of N is 1. Note that the affect of this
restriction applies only to protected entry queues due to the accompanying
restriction of Max_Task_Entries => 0.
@@ -122,9 +124,15 @@
There are no semantic dependencies on package Ada.Task_Attributes.
-The Boolean expression in an entry barrier shall be be either a Boolean literal
+The Boolean expression in an entry barrier shall be either a Boolean literal
value or the value of a Boolean component of the enclosing protected object.
+(1) The effect of the Max_Entry_Queue_Length = 1 restriction applies only to
+protected entry queues due to the accompanying restriction of
+Max_Task_Entries => 0. [Editor's note: Not true, these must be usable in
+all contexts, not just Ravenscar.]
1.4. Bounded Error Detection
The bounded error that is the invocation of one of the following
@@ -149,8 +157,8 @@
(2) Detection of these bounded error cases results in Program_Error being
raised (see 9.5.1(17)).
-(3) Potentially blocking operations that occur in a foreign language domain
- may not be detected.
+(3) An operation that causes a task to be blocked within a foreign language
+ domain is not defined to be potentially blocking, and may not be detected.
@@ -159,7 +167,7 @@
a) Pragma Profile is presented as an "alternative" mode of operation rather
than a "non-standard" mode as in section 1.1.5(11) since its inclusion in the
Standard makes it not non-standard. Other profiles may be defined by an
-implementation, for example to define the Spark subset, or to define variations
+implementation, for example to define the SPARK subset, or to define variations
of the Ravenscar definition such as Ravenscar_Non_Preemptive.
b) The pragma No_Task_Hierarchy must impose the constraint that all tasks
Questions? Ask the ACAA Technical Agent