CVS difference for ais/ai-00168.txt

Differences between 1.2 and version 1.3
Log of other versions for file ais/ai-00168.txt

--- ais/ai-00168.txt	1998/10/01 00:24:29	1.2
+++ ais/ai-00168.txt	1999/02/28 00:31:17	1.3
@@ -1,4 +1,4 @@
-!standard 04.06    (00)                               98-04-04  AI95-00168/01
+!standard 04.06    (00)                               99-02-23  AI95-00168/03
 !class binding interpretation 96-11-16
 !status work item 98-04-04
 !status received 96-11-16
@@ -6,10 +6,10 @@
 !difficulty Easy
 !subject Aliased objects cannot have discriminants modified
 
-!summary 98-04-04
+!summary 99-02-23
 
-A view conversion may not be used to change the aliased-ness of array
-components.
+A view conversion is illegal if the target subtype and the operand do not
+have both aliased components or both non-aliased components.
 
 A discriminant constraint for a general access type is illegal if the
 designated subtype is a private type with default discriminants, but the
@@ -72,7 +72,8 @@
 !discussion 98-04-04
 
 The problem (1) comes from the fact that it is possible to use a view
-conversion to convert an array object with aliased components to an array type
+conversion to convert an array object with aliased components to an array
+type
 with non-aliased components.  Such a conversion must be disallowed.
 
 At the Henley meeting, the following case was also discussed:
@@ -85,14 +86,16 @@
   end P;
 
 The root of problem (2) is that the partial view of P.T is constrained, but
-the full view isn't.  This causes privacy problems when applying the following
+the full view isn't.  This causes privacy problems when applying the
+following
 rule:
 
 "if a component_definition contains the reserved word aliased and the type of
 the component is discriminated, then the nominal subtype of the component
 shall be constrained." (RM95 3.6(11))
 
-One way to fix this problem would be to require a component-by-component check
+One way to fix this problem would be to require a component-by-component
+check
 on the assignment to Q.X, but that would be very expensive.  Moreover, a
 compile-time check would clearly be better than a run-time check.
 
@@ -145,3 +148,4 @@
 should be illegal.
 
 ****************************************************************
+

Questions? Ask the ACAA Technical Agent