CVS difference for ais/ai-00195.txt

Differences between 1.22 and version 1.23
Log of other versions for file ais/ai-00195.txt

--- ais/ai-00195.txt	2002/03/13 00:48:26	1.22
+++ ais/ai-00195.txt	2002/05/25 03:42:17	1.23
@@ -1,11 +1,12 @@
-!standard 8.3 (23)                                    01-10-17  AI95-00195/10
+!standard 8.3 (23)                                    02-05-09  AI95-00195/11
 !standard 13.13.1 (09)
 !standard 13.13.1 (27)
 !standard 13.13.1 (35)
 !standard 13.13.1 (36)
 !standard 13.13.1 (36.1)
 !class binding interpretation 98-03-27
-!status ARG approved 6-0-2  01-10-07
+!status Amendment 200Y 02-05-09
+!status ARG Approved 6-0-2  01-10-07
 !status work item 98-04-04
 !status received 98-03-27
 !reference AI95-00108
@@ -78,8 +79,8 @@
 specified by an attribute definition clause."
 
 If some stream-oriented attribute has been specified in a private part, and we
-are at a point that doesn't have visibility over that private part, is a
-reference to the attribute legal? (No.)
+are at a point where declarations in that private part are not visible,
+is a reference to the attribute legal? (No.)
 
 3 - Let T be a limited type with a visible attribute_definition_clause for
 attribute Read. Is a usage of T'Class'Read legal? (Yes.)
@@ -106,7 +107,7 @@
               ...
            end record;
 
-Say that attributes_definition_clauses have been given for T1'Read and
+Say that attribute_definition_clauses have been given for T1'Read and
 T2'Read, and consider a call to R'Read. Assume that, during this call, an
 exception is raised by T2'Read. Is the discriminant X.D1 modified? (No.)
 
@@ -169,12 +170,12 @@
            P.T'Read (..., X); -- Illegal?
         end Q;
 
-The call to P.T'Read is illegal, because Q doesn't have visibility over the
-private part of P, which contains the attribute_definition_clause for
-attribute Read. On the other hand, at a place that has visibility over the
-private part of P (and that comes after the attribute_definition_clause) a
-reference to T'Read is legal. This rule is necessary to preserve the privacy
-of private types.
+The call to P.T'Read is illegal, because the declarations and clauses
+(including the attribute_definition_clause for Read) in the private part of P
+are not visible in Q. On the other hand, at a place where the declarations and
+clauses  in the private part of P are visible (and that comes after the
+attribute_definition_clause) a reference to T'Read is legal. This rule is
+necessary to preserve the privacy of private types.
 
 Note that it is the location of the attribute_definition_clause that counts,
 not that of the subprogram specified in that clause. Thus, if the procedure
@@ -190,7 +191,7 @@
 attribute_reference for that attribute is (or would be) legal at that place.
 
 The rules given in 13.13.2(9/1) try to insure that if the Read attribute
-is available for a limited tagged ancestor type, then it as also available for
+is available for a limited tagged ancestor type, then it is also available for
 all of the types derived from that ancestor. However, this is not true because
 this rule fails to take into account the visibility issues mentioned in item #2
 above. Consider for example:
@@ -291,10 +292,10 @@
 
 
 6 - The problem mentioned in the question only exists for a type R that is
-passed by-reference to R'Read: obviously if the type is passed by copy, an
+passed by reference to R'Read: obviously if the type is passed by copy, an
 exception raised by R'Read cannot affect the original object.
 
-In the case of a type which is passed by-reference, we must consider two
+In the case of a type which is passed by reference, we must consider two
 cases:
 
    - If the exception in T2'Read is due to the failure of some
@@ -315,7 +316,7 @@
 for this anonymous object.
 
 Strictly speaking, the use of an anonymous object is only required for a type
-with defaulted discriminants which is passed by-reference, if the actual
+with defaulted discriminants which is passed by reference, if the actual
 parameter of Read is not constrained. However, an implementation is free to
 use anonymous objects in other cases.
 
@@ -521,7 +522,8 @@
 S'Read, respectively. This rule applies across partitions if the implementation
 conforms to the Distributed Systems Annex.
 @dinst
-@i<@s8<Implementation Permissions>>@hr
+@i<@s8<Implementation Permissions>>
+
 The number of calls performed by the predefined implementation of the stream-
 oriented attributes on the Read and Write operations of the stream type is
 unspecified. An implementation may take advantage of this permission to perform

Questions? Ask the ACAA Technical Agent