CVS difference for ais/ai-00251.txt

Differences between 1.30 and version 1.31
Log of other versions for file ais/ai-00251.txt

--- ais/ai-00251.txt	2005/04/13 05:37:01	1.30
+++ ais/ai-00251.txt	2005/05/15 23:41:36	1.31
@@ -1,4 +1,4 @@
-!standard 03.04    (02)                            05-02-25   AI95-00251/19
+!standard 03.04    (02)                            05-05-05   AI95-00251/20
 !standard 02.09    (02)
 !standard 03.02.01 (02)
 !standard 03.04    (03)
@@ -387,8 +387,9 @@
         In a view conversion for an untagged type, the target type shall be
         convertible (back) to the operand type.
 
-        If there is a type that is an ancestor of both the target type
-        and the operand type, then:
+        If there is a type that is an ancestor of both the target type and the
+	operand type, or both types are class-wide types, then at least
+        one of the following rules shall apply:
 
             - The target type shall be untagged; or
 
@@ -402,8 +403,9 @@
               the specific type associated with at least one of them shall
               be an interface type.
 
-        If there is no type that is an ancestor of both the target type
-        and the operand type, then:
+        If there is no type that is the ancestor of both the target type and
+	the operand type, and they are not both class-wide types, one of the
+	following rules shall apply:
 
     Existing paragraphs 8, 9-12.1/1, 13-17, and 18-20 become bullets under
     "If there is no type ...".
@@ -1243,8 +1245,9 @@
 be a type that is an ancestor of both the target type and the operand type.
 Further, if the target type is tagged, then either:
 @dby
-If there is a type that is an ancestor of both the target type and the operand
-type, then:
+If there is a type that is an ancestor of both the target type and the
+operand type, or both types are class-wide types, then at least
+one of the following rules shall apply:
 
 @xbullet<The target type shall be untagged; or>
 
@@ -1267,8 +1270,9 @@
 In a view conversion for an untagged type, the target type shall be convertible
 (back) to the operand type.
 @dby
-If there is no type that is an ancestor of both the target type
-and the operand type, then:
+If there is no type that is the ancestor of both the target type and the
+operand type, and they are not both class-wide types, one of the following
+rules shall apply:
 
 @xbullet<If the target type is a numeric type, then the operand type shall be a
 numeric type.>

Questions? Ask the ACAA Technical Agent