CVS difference for ais/ai-00195.txt
--- ais/ai-00195.txt 2005/06/16 23:47:10 1.32
+++ ais/ai-00195.txt 2005/08/21 06:00:12 1.33
@@ -1,4 +1,4 @@
-!standard 8.3 (23) 05-05-05 AI95-00195/16
+!standard 8.3 (23) 05-08-08 AI95-00195/17
!standard 13.13.2 (09/1)
!standard 13.13.2 (27)
!standard 13.13.2 (35)
@@ -55,7 +55,8 @@
8 - If S is a subtype of an abstract type, an attribute_reference for S'Input
is illegal unless this attribute has been specified by an
-attribute_definition_clause.
+attribute_definition_clause (which is impossible, as any such function must
+be abstract, which we don't allow (see #5)).
9 - The number of calls performed by the predefined implementation of the
stream-oriented attributes on the Read and Write operations of the stream type
@@ -491,10 +492,7 @@
A stream-oriented attribute for a subtype of a specific type @i<T> is
@i<available> at places where one of the following conditions is true:
-@xbullet<The @fa<attribute_designator> is Read, Write, or Output, and @i<T>
-is nonlimited.>
-@xbullet<The @fa<attribute_designator> is Input, and @i<T> is nonlimited
-and not abstract.>
+@xbullet<@i<T> is nonlimited.>
@xbullet<The @fa<attribute_designator> is Read (resp. Write) and @i<T> is
a limited record extension, and the attribute Read (resp. Write) is
available for the parent type of @i<T> and for the types of all of the
@@ -505,19 +503,20 @@
@fa<attribute_definition_clause>, and the @fa<attribute_definition_clause>
is visible.>
-A stream-oriented attribute for a subtype of a class-wide type T'Class is
+A stream-oriented attribute for a subtype of a class-wide type @i<T>'Class is
available at places where one of the following conditions is true:
-@xbullet<@i<T> is nonlimited; or>
-@xbullet<The attribute has been specified via an
+@xbullet<@i<T> is nonlimited;>
+@xbullet<the attribute has been specified via an
@fa<attribute_definition_clause>, and the @fa<attribute_definition_clause>
is visible; or>
-@xbullet<where the corresponding attribute of @i<T> is available, provided
+@xbullet<the corresponding attribute of @i<T> is available, provided
that if @i<T> has a partial view, the corresponding attribute is available
at the end of the visible part where @i<T> is declared.>
An @fa<attribute_reference> for one of the stream-oriented attributes is
illegal unless the attribute is available at the place of the
-@fa<attribute_reference>.
+@fa<attribute_reference>. Furthermore, an @fa<attribute_reference> for
+@i<T>'Input is illegal if @i<T> is an abstract type.
In the @fa<parameter_and_result_profile>s for the stream-oriented attributes,
the subtype of the Item parameter is the base subtype of @i<T> if @i<T> is a
Questions? Ask the ACAA Technical Agent