CVS difference for ais/ai-00137.txt

Differences between 1.4 and version 1.5
Log of other versions for file ais/ai-00137.txt

--- ais/ai-00137.txt	2000/03/09 03:09:40	1.4
+++ ais/ai-00137.txt	2000/04/14 01:45:07	1.5
@@ -1,4 +1,4 @@
-!standard 13.01    (10-11)                            00-03-07  AI95-00137/03
+!standard 13.01    (10-11)                            00-04-12  AI95-00137/04
 !class binding interpretation 96-05-07
 !status Corrigendum 2000 99-07-28
 !status WG9 approved 96-12-07
@@ -58,8 +58,8 @@
 proven to be a continuing problem. Several issues have made it necessary
 to except stream attributes from the rules for representation attributes,
 enough that it is clear that they are not representation attributes. Therefore,
-we take the major step of defining a new kind of attribute, the "operational
-attributes", and redefining stream attributes to be of this kind.
+we have taken the major step of defining a new kind of attribute, the
+"operational attributes", and redefining stream attributes to be of this kind.
 
 !corrigendum  3.08(05)
 
@@ -110,6 +110,13 @@
          | aspect_clause>>
 
 
+!corrigendum 13.01(00)
+
+@drepl
+Representation Items
+@dby
+Operational and Representation Items
+
 !corrigendum 13.01(01)
 
 @drepl
@@ -124,10 +131,11 @@
 declared local to the current declarative region, or a library unit declared
 immediately preceding a representation pragma in a @fa<compilation>.
 @dby
-There are four kinds of @i<representation items>:
+There are six kinds of @i<representation items>:
 @fa<attribute_definition_clause>s for representation attributes,
-@fa<representation_clause>s, @fa<component_clause>s, and
-@i<representation pragmas>. Representation items
+@fa<enumeration_representation_clause>s, @fa<record_representation_clause>s,
+@fa<at_clause>s, @fa<component_clause>s, and @i<representation pragmas>.
+Representation items
 specify how the types and other entities of the language are to be mapped onto
 the underlying machine. They can be provided to give more efficient
 representation or to interface with features that are outside the domain of
@@ -149,9 +157,7 @@
       | at_clause>>
 @dby
 @xcode<@fa<aspect_clause ::= attribute_definition_clause
-      | representation_clause
-
-representation_clause ::= enumeration_representation_clause
+      | enumeration_representation_clause
       | record_representation_clause
       | at_clause>>
 
@@ -162,9 +168,8 @@
 @xindent<A representation pragma is allowed only at places where a
 @fa<representation_clause> or @fa<compilation_unit> is allowed.>
 @dby
-@xindent<A representation pragma is allowed only at places where a
-@fa<representation_clause>, @fa<attribute_definition_clause>, or
-@fa<compilation_unit> is allowed.>
+@xindent<A representation pragma is allowed only at places where an
+@fa<aspect_clause> or @fa<compilation_unit> is allowed.>
 
 !corrigendum 13.01(05)
 
@@ -228,9 +233,9 @@
 clauses) or @i<type-related> (all others).  Subtype-specific aspects may differ
 for different subtypes of the same type.
 @dinst
-The @fa<local_name> of an operational item shall denote a first subtype. An
-operational item @i<directly specifies> an @i<operational aspect> of the type
-of the subtype denoted by the @fa<local_name>. Operational items are
+An operational item @i<directly specifies> an @i<operational aspect> of the
+type of the subtype denoted by the @fa<local_name>. The @fa<local_name> of an
+operational item shall denote a first subtype. Operational items are
 type-related.
 
 !corrigendum 13.01(09)
@@ -304,17 +309,9 @@
 
 @drepl
 The following attributes are defined:
-@dby
-The following representation attributes are defined:
-
-!corrigendum 13.03(68)
-
-@drepl
-For a prefix X that denotes an array subtype or array object (after any
-implicit dereference):
 @dby
-For a prefix X that denotes an array subtype or array object (after any
-implicit dereference), the following representation attribute is defined:
+The following representation attributes are defined: Address, Alignment, Size,
+Storage_Size, and Component_Size.
 
 !corrigendum 13.03(74)
 
@@ -322,23 +319,25 @@
 For every subtype S of a tagged type T (specific or class-wide), the following
 attribute is defined:
 @dby
-For every subtype S of a tagged type T (specific or class-wide), the following
-operational attribute is defined:
+The following operational attribute is defined: External_Tag.
+
+For every subtype S of a tagged type T (specific or class-wide):
 
-!corrigendum 13.11(2)
+!corrigendum 13.04(11)
 
 @drepl
-A storage pool is a variable of a type in the class rooted at Root_Storage_Pool,
-which is an abstract limited controlled type. By default, the implementation
-chooses a standard storage pool for each access type. The user may define new
-pool types, and may override the choice of pool for an access type by
-specifying Storage_Pool for the type.
-@dby
-A storage pool is a variable of a type in the class rooted at Root_Storage_Pool,
-which is an abstract limited controlled type. By default, the implementation
-chooses a standard storage pool for each access type. The user may define new
-pool types, and may override the choice of pool for an access type by
-specifying the representation attribute Storage_Pool for the type.
+11 Unchecked_Conversion may be used to query the internal codes used
+for an enumeration type. The attributes of the type, such as Succ,
+Pred, and Pos, are unaffected by the @fa<representation_clause>. For
+example, Pos always returns the position number, not the internal
+integer code that might have been specified in a @fa<representation_clause>.
+@dby
+11 Unchecked_Conversion may be used to query the internal codes used
+for an enumeration type. The attributes of the type, such as Succ,
+Pred, and Pos, are unaffected by the @fa<enumeration_representation_clause>. For
+example, Pos always returns the position number, not the internal
+integer code that might have been specified in a
+@fa<enumeration_representation_clause>.
 
 !corrigendum 13.11(12)
 
@@ -353,7 +352,7 @@
 The Write, Read, Output, and Input attributes convert values to a
 stream of elements and reconstruct values from a stream.
 @dby
-The Write, Read, Output, and Input operational attributes convert values to a
+The operational attributes Write, Read, Output, and Input convert values to a
 stream of elements and reconstruct values from a stream.
 
 !corrigendum 13.14(19)
@@ -632,6 +631,14 @@
 Note that the changes listed here don't include the corresponding changes
 in the (non-normative) syntax summary. I'll do this in the integrated
 reference manual, of course, but doing it here just bulks this up further.
+
+****************************************************************
+
+Notes from the editor, dated 2000-04-12
+
+AT the Phoenix ARG meeting, it was decided to minimize the syntax changes
+(by only changing Representation_Clause to Aspect_Clause), and make all other
+changes in the text. The current wording reflects that.
 
 ****************************************************************
 

Questions? Ask the ACAA Technical Agent