CVS difference for ais/ai-10291.txt
--- ais/ai-10291.txt 2005/06/16 23:47:48 1.3
+++ ais/ai-10291.txt 2005/08/21 06:00:43 1.4
@@ -62,7 +62,7 @@
size of an object is greater than that of its subtype, the additional
bits are padding bits. For an elementary object, these padding
bits are normally read and updated along with the others. For a composite
- object padding bits might not be read or updated
+ object, padding bits might not be read or updated
in any given composite operation, depending on the implementation.
Insert after 13.1(18.1/1)
@@ -106,10 +106,10 @@
Insert after 13.2(6):
- If a packed type has a component which is not
+ If a packed type has a component, which is not
of a by-reference type and has no aliased part,
then such a component need not be aligned according
- to the Alignment of the component's subtype; in particular
+ to the Alignment of its subtype; in particular
it need not be allocated on a storage element boundary.
Delete 13.3(18) [text was moved to 13.1(24)]
@@ -128,7 +128,7 @@
Address modulo the Alignment is zero).
Alignment may be specified for stand-alone objects via an
- attribute_definition clause; the expression of such a clause shall
+ attribute_definition_clause; the expression of such a clause shall
be static, and its value nonnegative.
For every subtype S:
@@ -142,6 +142,11 @@
X'Alignment is a nonzero integral multiple of S'Alignment unless
specified otherwise by a representation item.
+ Alignment may be specified for first subtypes via an
+ attribute_definition_clause; the expression of such a clause shall
+ be static, and its value nonnegative.
+
+
Replace 13.3(28) with
For an object that is not allocated under control of the
@@ -167,7 +172,7 @@
An implementation need not support Alignments specified for
objects of a by-reference type or for objects of types containing
aliased subcomponents if the specified Alignment is not
- a multiple of the Alignment of the object's subtype.
+ a multiple of the Alignment of the subtype of the object.
In 13.3(43) replace
"A Size clause should be supported for an object if ..."
@@ -258,7 +263,7 @@
subcomponents of the object. If the size of an object is greater than that of
its subtype, the additional bits are padding bits. For an elementary object,
these padding bits are normally read and updated along with the others. For a
-composite object padding bits might not be read or updated in any given
+composite object, padding bits might not be read or updated in any given
composite operation, depending on the implementation.
!corrigendum 13.1(18.1/1)
@@ -315,9 +320,9 @@
allocated to objects of the type, possibly at the expense of speed of accessing
components, subject to reasonable complexity in addressing calculations.
@dinst
-If a packed type has a component which is not of a by-reference type and has no
-aliased part then such a component need not be aligned according to the
-Alignment of the component's subtype; in particular it need not be allocated on
+If a packed type has a component, which is not of a by-reference type and has
+no aliased part, then such a component need not be aligned according to the
+Alignment of its subtype; in particular it need not be allocated on
a storage element boundary.
!corrigendum 13.3(18)
@@ -383,6 +388,10 @@
X'Alignment is a nonzero integral multiple of S'Alignment unless specified
otherwise by a representation item.>
+@xindent<Alignment may be specified for first subtypes via an
+@fa<attribute_definition_clause>; the expression of such a clause shall
+be static, and its value nonnegative.>
+
!corrigendum 13.3(28)
@drepl
@@ -423,8 +432,8 @@
@xbullet<An implementation need not support Alignments specified for objects of
a by-reference type or for objects of types containing aliased subcomponents if
-the specified Alignment is not a multiple of the Alignment of the object's
-subtype.>
+the specified Alignment is not a multiple of the Alignment of the subtype of
+the object.>
!corrigendum 13.3(42)
Questions? Ask the ACAA Technical Agent