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

Differences between 1.6 and version 1.7
Log of other versions for file ai12s/ai12-0178-1.txt

--- ai12s/ai12-0178-1.txt	2016/04/19 05:49:39	1.6
+++ ai12s/ai12-0178-1.txt	2016/04/26 04:58:08	1.7
@@ -1,7 +1,8 @@
-!standard 4.1.3(17/2)                                    16-03-30  AI12-0178-1/03
+!standard 4.1.3(17/2)                                    16-04-25  AI12-0178-1/04
 !standard 4.3.2(13)
 !standard 4.3.3(45/2)
 !standard 4.5.2(37)
+!standard 8.3.1(12/2)
 !standard 9.7.3(6)
 !standard 9.11(7.1/2)
 !standard 10.1.2(29/2)
@@ -76,6 +77,11 @@
 anyway. We know it's about ordering as John thinks he proposed adding this
 example of ordering to the RM in roughly 1980.]
 
+Modify 8.3.1(12/2):
+
+    overriding
+    procedure Remove_First(Q : in out Security_Queue; Person : [in]{out} Person_Name);
+
 Modify 9.7.3(6): (just the modified part shown)
 
     procedure Spin(R : in {out} Resource) is {-- see 9.4}
@@ -201,51 +207,36 @@
 
 
 !discussion
-
-Jeff said:
 
-13.11
+For the example in 13.11, the original comment was:
 
-This seems to have randomly selected just one of the places (Subpool_Handle)
-that use entities from "MR_Pool" to have an "MR_Pool." prefix. 
+   This seems to have randomly selected just one of the places (Subpool_Handle)
+   that use entities from "MR_Pool" to have an "MR_Pool." prefix. 
 
-[Editor: No. The type Mark_Release_Pool_Type and its operations are declared
-here. The "..." at paragraph 40 includes the declarations of the Mark and
-Release operations -- that's what 13.11(38/3) says (or at least meant). We're
-not using "MR_Pool" here (that would be an unacceptable forward reference),
+This was an incorrect intepretation of this example. The type
+Mark_Release_Pool_Type and its operations are declared here. The "..." at
+paragraph 40 includes the declarations of the Mark and Release operations --
+that's what 13.11(38/3) says (or at least meant). We're not using "MR_Pool"
+here (that would be an unacceptable forward reference),
 but rather a set of declarations like it.
 
-Maybe we could clarify that somehow, but I don't think there is any point
-in adding prefixes that would orphan the type declaration in 13.11(39/3).
-(There shouldn't be any prefix in 13.11(41/3).)
+The prefix in 13.11(41/3) shouldn't have been there and is now deleted.
 
 If we really wanted this to use "MR_Pool", we'd have to move the entire example
-to 13.11.6, which seems to defeat the purpose.]
+to 13.11.6, which seems to defeat the purpose.
 
 ---------
-
-Jeff said:
-
-3.9.4 (and 8.3.1 and 9.1)
-
-The interfaces and their operations need to be in a package spec for the
-operations to be dispatching (and the packages "use"d for the subsequent code).
-Remove_First's parameter Person should be mode out, not in, to be mode
-conformant with 3.9.4.
 
-4.1.5 & 4.1.6
+It was noted that the examples in 3.9.4, 4.1.5, 4.1.6, 8.3.1, and 9.11 all
+need to be in a package specification to be dispatching.
 
-The declarations need to be in a package spec for the subprograms to be
-dispatching.
+As none of these examples is complete, and most them would need a forward
+reference in the RM to use a package (packages are introduced in Clause 7),
+we do not make any change to these examples.
 
-[Editor: This is true, but it would be a forward reference in the RM (packages
-haven't been introduced yet), and clearly none of these examples are complete.
-If we wanted to actually do that, we'd need to move the examples much later
-in the Standard.]
-
 ---------
 
-Examples that could be better that we're not going to fix now
+Examples that could be better that we're not going to fix now:
 
 3.6 A definition of type Error_Code would help.
 
@@ -300,6 +291,15 @@
 @xcode<S : String := "A";
 "" < S @b<and> S < "Aa"         --@ft<@i<  True>>
 S < "Bb" @b<and> S < "A  "      --@ft<@i<  True>>>
+
+!corrigendum 8.3.1(12/2)
+
+@drepl
+@xcode<@b<overriding>
+@b<procedure> Remove_First(Q : @b<in out> Security_Queue; Person : @b<in> Person_Name);>
+@dby
+@xcode<@b<overriding>
+@b<procedure> Remove_First(Q : @b<in out> Security_Queue; Person : @b<out> Person_Name);>
 
 !corrigendum 9.7.3(6)
 

Questions? Ask the ACAA Technical Agent