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

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

--- ai12s/ai12-0304-1.txt	2019/04/12 04:49:12	1.3
+++ ai12s/ai12-0304-1.txt	2019/05/10 02:47:49	1.4
@@ -1,5 +1,9 @@
-!standard 4.10(0)                                  19-04-09  AI12-0304-1/02
+!standard 4.10(0)                                  19-05-09  AI12-0304-1/03
 !class Amendment 19-01-11
+!status Amendment 1-2012 19-05-09
+!status ARG Approved 11-0-0  19-05-09
+!status work item 19-04-11
+!status ARG Approved 10-0-0  19-04-09
 !status work item 19-01-11
 !status received 19-01-10
 !priority Low
@@ -28,7 +32,7 @@
     For each language-defined nonscalar type T, T'Put_Image
     may be specified.
 
-    AARM note: This permission applies, in particular, to
+    AARM Note: This permission applies, in particular, to
     nonscalar types declared in language-defined generic packages,
     and to any language-defined private type, even if an implementation
     chooses to complete it as a scalar type.
@@ -36,17 +40,17 @@
     AARM Note: For any language-defined scalar type T, T'Put_Image should
     not be specified; the Image attribute needs to return the language-defined 
     image for such types. This is important for compatibility: the Image 
-    attribute have been available for scalar types for many Ada revisions, 
+    attribute has been available for scalar types for many Ada revisions, 
     and programs can (and do!) depend on its behavior.
 
-    Implementation Advice
+    Implementation Requirements
 
     For each language-defined container type T (that is, each of the Vector,
     List, Map, Set, Tree, and Holder types defined in the various
-    children of Ada.Containers), T'Put_Image should be specified so
+    children of Ada.Containers), T'Put_Image shall be specified so
     that T'Image produces a result consistent with array aggregate
     syntax (using "[" and "]" as delimiters) as follows:
-        - Vector images should be consistent with the default image of 
+        - Vector images shall be consistent with the default image of 
           an array type with the same index and component types.
 
           AARM Note: In particular, this means that the format is that
@@ -55,7 +59,7 @@
           may wish to display them specially, but otherwise, they're just 
           uninitialized elements.
 
-        - Map images should be consistent with named array aggregate
+        - Map images shall be consistent with named array aggregate
           syntax, using key value images in place of discrete choice
           names. For example, "[Key1 => Value1, Key2 => Value2]".
 
@@ -67,7 +71,7 @@
             (that is, generating "Key1 | Key2 => Some_Value" instead of
             "Key1 => Some_Value, Key2 => Some_Value").
 
-        - Set, List, and Holder images should be consistent with
+        - Set, List, and Holder images shall be consistent with
           positional array aggregate syntax. List elements should
           occur in order within an image of a list. The image of an
           empty holder should be "[]".
@@ -76,7 +80,7 @@
             There is no recommendation about the order in which
             set elements occur within the image of a set.
 
-        - Tree images (and images of subtrees of trees) should be
+        - Tree images (and images of subtrees of trees) shall be
           consistent with positional array aggregate syntax.
           For example, "[[1, 2], [111, 222, 333]]".
 
@@ -85,12 +89,12 @@
     that of T'Image (for example, Ada.Numerics.Float_Random.State has such 
     an Image function), T'Put_Image should be specified so that T'Image
     yields the same result as that Image function.
+
+    Implementation Advice
 
-    AARM Note:
-    For each language-defined private type T, implementations are
-    encouraged to ensure that T'Image generates images that would be
-    meaningful based only on the relevant public interfaces, as opposed
-    to requiring knowledge of the implementation of the private type.
+    For each language-defined private type T, T'Image should generate an image
+    that would be meaningful based only on the relevant public interfaces, as 
+    opposed to requiring knowledge of the implementation of the private type.
 
 !discussion
 

Questions? Ask the ACAA Technical Agent