CVS difference for ai12s/amd2xcon.txt

Differences between 1.76 and version 1.77
Log of other versions for file ai12s/amd2xcon.txt

--- ai12s/amd2xcon.txt	2021/03/18 06:30:29	1.76
+++ ai12s/amd2xcon.txt	2021/05/24 22:57:19	1.77
@@ -2105,6 +2105,7 @@
 !AI-0384-2
 !AI-0419-1
 !AI-0425-1
+!AI-0427-1
 
 @dinsc
 
@@ -2136,6 +2137,10 @@
 type T either via an @fa<attribute_definition_clause> or via an
 @fa<aspect_specification> specifying the Put_Image aspect of the type.>
 
+For an @fa<aspect_specification> or @fa<attribute_definition_clause>
+specifying Put_Image, the subtype of the @i<Arg> parameter shall be the first
+subtype or the base subtype if scalar, and the first subtype if not scalar.
+
 The behavior of the default implementation of S'Put_Image depends
 on the class of T.
 
@@ -2269,7 +2274,8 @@
 passing @i<Arg> (which will typically store a sequence of character values
 in a text buffer) and then returns the 
 result of retrieving the contents of that buffer with function Wide_Wide_Get.
-The lower bound of the result is one.>
+The lower bound of the result is one. Any exception propagated by the call of 
+S'Put_Image is propagated.>
 
 @xhang<@xterm<S'Wide_Image>
 S'Wide_Image denotes a function with the following specification:>
@@ -2281,7 +2287,8 @@
 passing @i<Arg> (which will typically store a sequence of character values
 in a text buffer) and then returns the 
 result of retrieving the contents of that buffer with function Wide_Get. The 
-lower bound of the result is one.>
+lower bound of the result is one. Any exception propagated by the call of 
+S'Put_Image is propagated.>
 
 @xhang<@xterm<S'Image>
 S'Image denotes a function with the following specification:>
@@ -2293,7 +2300,8 @@
 passing @i<Arg> (which will typically store a sequence of character values
 in a text buffer) and then returns the 
 result of retrieving the contents of that buffer with function Get. The 
-lower bound of the result is one.>
+lower bound of the result is one. Any exception propagated by the call of 
+S'Put_Image is propagated.>
 
 For a @fa<prefix> X of a type T other than @i<universal_real> or 
 @i<universal_fixed>, the following attributes are defined:
@@ -4147,10 +4155,10 @@
 is as described in the case of an individual membership test whose 
 @fa<membership_choice> is a @i<choice_>@fa<simple_expression> (see 4.5.2).
 
-The Pre expression additions described above are 
-enabled or disabled depending on the Pre assertion policy that is in effect 
+The Post expression additions described above are 
+enabled or disabled depending on the Post assertion policy that is in effect 
 at the point of declaration of the subprogram @i<S>. A similar rule applies 
-to the Pre'Class expression additions.
+to the Post'Class expression additions.
 
 @xindent<@s9<NOTES@hr
 14  For an example of the use of these aspects, see the Vector container
@@ -4214,6 +4222,29 @@
 constrained or @i<S> shall statically match the first subtype of its type.>
 
 
+!corrigendum 8.6(17.1/4)
+!AI-0324-1
+!AI-0427-1
+
+@drepl
+@xindent<Within an @fa<aspect_specification> for a type or subtype, the
+current instance represents a value of the type; it is not an object. The
+nominal subtype of this value is given by the subtype itself (the
+first subtype in the case of a @fa<type_declaration>), prior to applying
+any predicate specified directly on the type or subtype. If the type or
+subtype is by-reference, the associated object with the value is the
+object associated (see 6.2) with the execution of the usage name.>
+@dby
+@xindent<Within an @fa<aspect_specification> for a type or subtype, the
+current instance represents a value of the type; it is not an object. Unless
+otherwise specified, the nominal subtype of this value is given by the subtype
+itself (the first subtype in the case of a @fa<type_declaration>), prior to 
+applying any predicate specified directly on the type or subtype. If the type
+or subtype is by-reference, the associated object of the value is the
+object associated (see 6.2) with the evaluation of the usage name.>
+
+
+
 !corrigendum 9(1/3)
 !AI-0119-1
 !AI-0330-1
@@ -8746,13 +8777,13 @@
 
 The following @fa<pragma>s are defined with the given forms: 
 
-@xindent<@ @ @b<pragma> Preelaborate (@i<library_unit_>@fa<name>);>
+@xindent<@ @ @b<pragma> Preelaborate[(@i<library_unit_>@fa<name>)];>
 
-@xindent<@ @ @b<pragma> Preelaborable_Initialization (@fa<direct_name>);>
+@xindent<@ @ @b<pragma> Preelaborable_Initialization(@fa<direct_name>);>
 
-@xindent<@ @ @b<pragma> Pure (@i<library_unit_>@fa<name>);>
+@xindent<@ @ @b<pragma> Pure[(@i<library_unit_>@fa<name>)];>
 
-@xindent<@ @ @b<pragma> Elaborate_Body (@i<library_unit_>@fa<name>);>
+@xindent<@ @ @b<pragma> Elaborate_Body[(@i<library_unit_>@fa<name>)];>
 
 @xindent<@fa<Pragma>s Preelaborate, Pure, and Elaborate_Body are library unit
 pragmas.>

Questions? Ask the ACAA Technical Agent