CVS difference for 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