CVS difference for acs/ac-00215.txt

Differences between 1.3 and version 1.4
Log of other versions for file acs/ac-00215.txt

--- acs/ac-00215.txt	2011/04/09 06:04:01	1.3
+++ acs/ac-00215.txt	2012/01/26 07:20:15	1.4
@@ -233,6 +233,56 @@
 
 ***************************************************************
 
+From: Steve Baird
+Sent: Friday, March 11, 2011   7:06 PM
+
+> BTW: I have not yet had an opportunity to use streaming, but also
+> there the discriminants come first (they have to or you couldn't
+> construct the value). So, according to what you say, positional
+> aggregates have a different order from streaming.
+
+I don't think there is a problem with streaming because discriminants of a
+non-limited tagged type cannot have defaults.
+
+This means that for tagged types, default implementations of Read/Write
+attributes read/write only non-discriminant components while Input/Outout
+attributes read/write only discriminants (before calling Read/Write),
+
+Since none of these read/write both discrims and non-discrims, the question of
+their relative places in the "positional aggregate ordering" of components never
+comes up.
+
+Ok, maybe one could construct a pathology such as
+
+    package Pkg is
+        subtype Index is Integer range 1 .. 100;
+        type T1 (D1, D2 : Index) is private;
+    private
+        type T1 (D1, D2 : Index) is new
+           Some_Tagged_Discriminated_Type (D1, D2) with
+              record F : String (D1 .. D2); end record;
+    end Pkg;
+
+    type T2 (D3 : Pkg.Index := 50) is new Pkg.T1 (D3, D3);
+
+and then wonder about what "positional aggregate order"
+mans for such a type. Let's not.
+
+While looking at this, I did notice a minor wording issue.
+
+In 13.13.2(26), the parenthesized wording eems wrong:
+
+    If T has discriminants without defaults, S'Output first writes the
+    discriminants (using S'Write for each), and S'Input first reads the
+    discriminants (using S'Read for each).
+
+S is a discriminated subtype. We are using S'Write and S'Read to write/read
+single discriminant values? Probably "using S'Write" should be replaced with
+something like "using the Write attribute of each dicriminant type", and
+similarly for Read.
+
+***************************************************************
+
 From: Adam Beneschan
 Sent: Thursday, March 17, 2011   8:44 PM
 

Questions? Ask the ACAA Technical Agent