CVS difference for ai12s/ai12-0114-1.txt

Differences between 1.3 and version 1.4
Log of other versions for file ai12s/ai12-0114-1.txt

--- ai12s/ai12-0114-1.txt	2014/06/23 23:53:23	1.3
+++ ai12s/ai12-0114-1.txt	2014/07/16 02:26:03	1.4
@@ -1,5 +1,7 @@
-!standard A(3/2)                                     14-06-08  AI12-0114-1/01
+!standard A(3/2)                                     14-07-15  AI12-0114-1/02
 !class binding interpretation 15-06-08
+!status Corrigendum 2015 14-07-15
+!status ARG Approved 7-0-0  14-06-28
 !status work item 14-06-08
 !status received 14-06-08
 !priority Low
@@ -28,15 +30,9 @@
 
 !recommendation
 
-A possible solution is to extend A(3) to read 
+A(3) need to be extended so that overlapping objects are excluded,
+whether they're passed by reference or designated by an access value.
 
-The implementation shall ensure that each language-defined subprogram
-is reentrant in the sense that concurrent calls on {any
-language-defined}[the same] subprogram perform as specified, so long
-as all parameters that could be passed by reference denote
-nonoverlapping objects {and all parameters of access type designate
-nonoverlapping objects}.
-
 This solution is preferable to special-case rules that deal with each
 problematic interface individually. Luckily the rule is written such
 that in practice it will not impact any subprograms in which access
@@ -44,14 +40,14 @@
 
 !wording
 
-Extend A(3) to read (inclusive of AI12-00052 changes):
+Modify A(3) (including changes from AI12-0052-1):
 
 The implementation shall ensure that each language-defined subprogram
-is reentrant in the sense that concurrent calls on {any
-language-defined}[the same] subprogram perform as specified, so long
-as all parameters that could be passed by reference denote
-nonoverlapping objects {and all parameters of access type designate
-nonoverlapping objects}.
+is reentrant in the sense that concurrent calls on any
+language-defined subprogram perform as specified, so long
+as all {objects that are denoted by} parameters that could be passed by reference
+{or designated by parameters of an access type are}[denote] nonoverlapping
+[objects].
 
 !discussion 
 
@@ -80,6 +76,20 @@
 of the user, the above examples show that the predefined packages also
 include interfaces that would be affected by data races when the same
 object is designated by access parameters of concurrent calls.
+
+!corrigendum A(3)
+
+@drepl
+The implementation shall ensure that each language-defined subprogram is
+reentrant in the sense that concurrent calls on the same subprogram perform as
+specified, so long as all parameters that could be passed by reference denote
+nonoverlapping objects.
+@dby
+The implementation shall ensure that each language-defined subprogram
+is reentrant in the sense that concurrent calls on any language-defined
+subprogram perform as specified, so long as all objects that are denoted by
+parameters that could be passed by reference or designated by parameters of
+an access type are nonoverlapping.
 
 !ASIS
 

Questions? Ask the ACAA Technical Agent