CVS difference for ai05s/ai05-0202-1.txt

Differences between 1.5 and version 1.6
Log of other versions for file ai05s/ai05-0202-1.txt

--- ai05s/ai05-0202-1.txt	2011/03/11 01:07:20	1.5
+++ ai05s/ai05-0202-1.txt	2011/03/17 07:06:30	1.6
@@ -1,5 +1,7 @@
 !standard  C.7.3(8/2)                               11-02-19    AI05-0202-1/03
 !class binding interpretation 10-02-12
+!status Amendment 2012 11-03-10
+!status ARG Approved  7-0-1  10-02-20
 !status work item 10-02-12
 !status received 09-09-24
 !priority Medium
@@ -75,12 +77,44 @@
 introduce undesirable distributed overhead on behalf of this very unusual
 circumstance.
 
---!corrigendum 3.9.3(4/2)
+!corrigendum C.7.3(8/2)
 
+@drepl
+The type Termination_Handler identifies a protected procedure to be executed by
+the implementation when a task terminates. Such a protected procedure is called
+a @i<handler>. In all cases T identifies the task that is terminating. If the
+task terminates due to completing the last statement of its body, or as a
+result of waiting on a terminate alternative, then Cause is set to Normal and X
+is set to Null_Occurrence. If the task terminates because it is being aborted,
+then Cause is set to Abnormal and X is set to Null_Occurrence. If the task
+terminates because of an exception raised by the execution of its
+@fa<task_body>, then Cause is set to Unhandled_Exception and X is set to the
+associated exception occurrence.
+@dby
+The type Termination_Handler identifies a protected procedure to be executed by
+the implementation when a task terminates. Such a protected procedure is called
+a @i<handler>. In all cases T identifies the task that is terminating. If the
+task terminates due to completing the last statement of its body, or as a result
+of waiting on a terminate alternative, and the finalization of the task completes
+normally, then Cause is set to Normal and X is set to Null_Occurrence. If the
+task terminates because it is being aborted, then Cause is set to Abnormal;
+X is set to Null_Occurrence if the finalization of the task completes normally.
+If the task terminates because of an exception raised by the execution of
+its @fa<task_body>, then Cause is set to Unhandled_Exception; X is set to
+the associated exception occurrence if the finalization of the task completes
+normally. Independent of how the task completes, if finalization of the task
+propagates an exception, then Cause is either Unhandled_Exception or
+Abnormal, and X is an exception occurrence that identifies the
+Program_Error exception.
 
+
 !ACATS Test
 
 An ACATS C-Test should be created that checks this semantics.
+
+!ASIS
+
+No impact on ASIS.
 
 !appendix
 

Questions? Ask the ACAA Technical Agent