CVS difference for ais/ai-00394.txt
--- ais/ai-00394.txt 2005/03/01 22:12:32 1.2
+++ ais/ai-00394.txt 2005/04/13 05:37:20 1.3
@@ -1,4 +1,4 @@
-!standard D.07(09) 05-02-16 AI95-00394/02
+!standard D.07(09) 05-03-01 AI95-00394/03
!standard D.07(10)
!standard D.07(15)
!standard D.13.1(01)
@@ -58,7 +58,7 @@
!wording
-Delete D.7(9), (the original) D.7(10), H.4(9), and H.4(16).
+Delete (the original) D.7(10), H.4(9), and H.4(16).
Delete No_Calendar and No_Task_Attributes_Package from the wording changes of
AI-305.
@@ -80,9 +80,6 @@
No_Asynchronous_Control
There are no semantic dependences on package Asynchronous_Task_Control.
-No_Dynamic_Priorities
- There are no semantic dependences on package Dynamic_Priorities.
-
No_Unchecked_Conversion
Semantic dependence on the predefined generic Unchecked_Conversion is
not allowed.
@@ -101,7 +98,7 @@
Add the following new static restriction_identifier after D.7(10):
No_Specific_Termination_Handlers
- There are no calls to the following subprograms in Ada.Task_Termination:
+ There are no calls to the following subprograms in Task_Termination:
Set_Specific_Handler and Specific_Handler.
@@ -131,6 +128,7 @@
pragma Restrictions (
No_Abort_Statements,
No_Dynamic_Attachment,
+ No_Dynamic_Priorities,
No_Implicit_Heap_Allocations,
No_Local_Protected_Objects,
No_Local_Timing_Events,
@@ -148,7 +146,6 @@
Max_Task_Entries => 0,
No_Dependence => Ada.Asynchronous_Task_Control,
No_Dependence => Ada.Calendar,
- No_Dependence => Ada.Dynamic_Priorities,
No_Dependence => Ada.Execution_Time.Group_Budget,
No_Dependence => Ada.Execution_Time.Timers,
No_Dependence => Ada.Task_Attributes);
@@ -159,16 +156,14 @@
The identifier No_IO covers a set of library packages
and thus was not moved to Annex J.
+The identifier No_Dynamic_Priorities was extended by AI-327 to cover uses
+of the Priority attribute for protected objects as well as dependencies on
+Ada.Dynamic_Priorities. Thus it was not moved to Annex J.
+
The minimum requirement for task termination when No_Task_Termination is in
force is to ensure that any fall-back handler is executed at least once. Given
that no tasks are meant to terminate this would seem to be sufficient.
-!corrigendum D.7(09)
-
-@ddel
-@xhang<@xterm<No_Dynamic_Priorities>
-There are no semantic dependences on the package Dynamic_Priorities.>
-
!corrigendum D.7(10)
!comment The AI-305 changes are made in the conflict text only.
@drepl
@@ -177,13 +172,15 @@
@dby
@xhang<@xterm<No_Specific_Termination_Handlers>
There are no calls to the Set_Specific_Handler and Specific_Handler subprograms
-in Ada.Task_Termination.
+in Task_Termination.
!corrigendum D.7(15)
@drepl
@i<This paragraph was deleted>
@dby
+The following @I<restriction_>@fa<identifier>s are language defined:
+
@xhang<@xterm<No_Task_Termination>
All tasks are non-terminating. It is implementation-defined what
happens if a task attempts to terminate. If there is a fall-back
@@ -213,6 +210,7 @@
@b<pragma> Restrictions (
No_Abort_Statements,
No_Dynamic_Attachment,
+ No_Dynamic_Priorities,
No_Implicit_Heap_Allocations,
No_Local_Protected_Objects,
No_Local_Timing_Events,
@@ -230,7 +228,6 @@
Max_Task_Entries =@> 0,
No_Dependence =@> Ada.Asynchronous_Task_Control,
No_Dependence =@> Ada.Calendar,
- No_Dependence =@> Ada.Dynamic_Priorities,
No_Dependence =@> Ada.Execution_Time.Group_Budget,
No_Dependence =@> Ada.Execution_Time.Timers,
No_Dependence =@> Ada.Task_Attributes);>
@@ -284,9 +281,6 @@
@xhang<@xterm<No_Asynchronous_Control>
There are no semantic dependences on package Asynchronous_Task_Control.>
-@xhang<@xterm<No_Dynamic_Priorities>
-There are no semantic dependences on package Dynamic_Priorities.>
-
@xhang<@xterm<No_Unchecked_Conversion>
Semantic dependence on the predefined generic Unchecked_Conversion is
ot allowed.>
@@ -608,6 +602,82 @@
What you are saying is that No_IO is more a *profile* than a single
restriction. If a profile can include another profile, that would do the
trick.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Monday, February 28, 2005 8:45 PM
+
+The recently approved AI-394 banishes several restrictions to Annex J in
+favor of using the new No_Dependence restriction.
+
+One of the restrictions so banished is No_Dynamic_Priorities:
+
+No_Dynamic_Priorities
+There are no semantic dependences on the package Dynamic_Priorities.
+
+However, AI-327 extended this restriction to:
+
+No_Dynamic_Priorities
+There are no semantic dependences on the package Dynamic_Priorities, and
+no occurrences of the attribute Priority.
+
+This covers the dynamic changing of ceiling priorities for protected
+objects. It seems to me that this still needs to be disallowed by profile
+Ravenscar, so it seems that someone fell asleep at the switch.
+
+I think that we need to put this back the way it was in AI-327, and leave
+this restriction in the Ravenscar profile, rather than use No_Dependence. Is
+this right??
+
+****************************************************************
+
+From: Robert Dewar
+Sent: Tuesday, March 1, 2005 12:00 AM
+
+Yes, that's indeed right
+
+****************************************************************
+
+From: Alan Burns
+Sent: Tuesday, March 1, 2005 2:33 AM
+
+...
+> This covers the dynamic changing of ceiling priorities for protected
+> objects. It seems to me that this still needs to be disallowed by profile
+> Ravenscar, so it seems that someone fell asleep at the switch.
+
+Well that would be me - yes totally missed this interaction
+Obviously i would have noticed it later ...
+
+> I think that we need to put this back the way it was in AI-327, and leave
+> this restriction in the Ravenscar profile, rather than use No_Dependence.
+> Is this right??
+
+YES
+
+****************************************************************
+
+From: Pascal Leroy
+Sent: Tuesday, March 1, 2005 3:31 AM
+
+> I think that we need to put this back the way it was in
+> AI-327, and leave this restriction in the Ravenscar profile,
+> rather than use No_Dependence. Is this right??
+
+Yes.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Tuesday, March 1, 2005 4:22 PM
+
+> Well that would be me - yes totally missed this interaction
+> Obviously i would have noticed it later ...
+
+Don't feel bad, I only noticed it because the tool that makes the Amendment
+document produced an error message. I'll process this as a correction to
+AI-394.
****************************************************************
Questions? Ask the ACAA Technical Agent