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

Differences between 1.41 and version 1.42
Log of other versions for file ai12s/ai12-0005-1.txt

--- ai12s/ai12-0005-1.txt	2020/12/04 07:59:28	1.41
+++ ai12s/ai12-0005-1.txt	2020/12/09 06:23:52	1.42
@@ -2757,6 +2757,10 @@
    container implementation b[y]{e} nonblocking
+   Note that such an implementation would [be ]require care,
    by multiple operations (sequenti[u]ally or in parallel)
@@ -2764,8 +2768,72 @@
 fixed them all.]
+[From the AARM Review of Tucker Taft (October 2020) - Editor.]
+Two typos:
+  Correction: Tightened the cases where an explicitly 
+aliased parameter has special accessibility, to avoid needing 
+to pass the required dynamic accessibility to functions that 
+have explicitly ali{a}sed parameters. The changes affect[s] 
+programs that use the dynamic accessibility of an explicitly 
+aliased parameter within a return statement of a function 
+(typically using anonymous access types). This can mean that 
+a program that would have been legal and worked in Ada 2012 
+as defined would raise Program_Error or be rejected in Ada 
+202x. One such example is: 
+Another typo:
+  At (2), there is a check that the dynamic 
+accessibility level of B is not deeper than the master of the 
+call for F2 (which is defined to be the master of the call 
+for F1). In Ada 2012, since the reference is inside of a 
+return statement, the dynamic accessibility of A.Comp'Access 
+is the master of the call for F1 - meaning the check at (2) 
+should pass. In Ada 202x, the [the] dynamic accessibility of 
+A.Comp'Access is local for for F1 - meaning the check at (2) 
+should fail and raise Program_Error.
+[From the AARM Review of John Barnes (October 2020) - Editor.]
+11.4.2  23.e/5    The last part of this seems garbled at first sight. Some 
+such requirements etc. Maybe the trouble is simply that Suppressed should 
+be suppressed.
+11.5  31.m/5 and n/5  It would be clearer if m/5 said The various assertion
+checks for language defined packages such as Calendar are new.  It then 
+becomes clearer (in n/5) that also adding Program_Error_Check_and 
+Tasking_Check covers the lot. 
+11.6  7.g/3 At first sight I thought that AI05-0299-1 would explain but that 
+is just about using subclause instead of clause. It is about the fact that 
+in Ada 83, the clause Suppressing Checks was numbered 11.7.  It should be 
+changed to read something like 
+We moved subclause "Suppressing Checks" which was numbered 11.7 from after 
+11.6 to before 11.6 etc.
+12.3  7.a/5         Duplicate a in "...apply to a a generic..."
+12.3  11.aa/3     "... every Semantic Item is sucked in by one of those."  
+Sounds vulgar. Perhaps "is covered" rather than "is sucked in".
+[Editor's note: I used "is included indirectly" as that is the meaning.
+It's a bit weird to be wordsmithing Ada 9x notes, given they've already
+been around 25+ years.]
+12.3  18.g/5       "an generic instantiation" should be "a generic instantiation".
-Editor's note (November 23, 2020): All of the items above this
+Editor's note (December 8, 2020): All of the items above this
 marker have been included in the working version of the AARM.

Questions? Ask the ACAA Technical Agent