CVS difference for ais/ai-00145.txt
--- ais/ai-00145.txt 1999/08/31 22:53:55 1.3
+++ ais/ai-00145.txt 2000/06/21 23:39:09 1.4
@@ -90,10 +90,15 @@
The italicized notation refers to the following subtypes:
T1'Base
+
T2
+
T3
+
T4
+
T5-without-the-constraint
+
T6
respectively. Note that T2 and T6 are constrained, despite the fact
@@ -106,12 +111,12 @@
8.5.4(5) says:
-5 The profile of a renaming-as-body shall be subtype-conformant with that
-of the renamed callable entity, and shall conform fully to that of the
-declaration it completes. If the renaming-as-body completes that declaration
-before the subprogram it declares is frozen, the subprogram it declares takes
-its convention from the renamed subprogram; otherwise the convention of the
-renamed subprogram shall not be Intrinsic.
+ The profile of a renaming-as-body shall be subtype-conformant with that
+ of the renamed callable entity, and shall conform fully to that of the
+ declaration it completes. If the renaming-as-body completes that declaration
+ before the subprogram it declares is frozen, the subprogram it declares takes
+ its convention from the renamed subprogram; otherwise the convention of the
+ renamed subprogram shall not be Intrinsic.
Consider:
@@ -125,7 +130,7 @@
function Equals(X, Y: T) return Boolean;
function Equals(X, Y: T) return Boolean renames "=";
-Without this AI, the above renaming-as-body would be illegal, since it
+Without this ruling, the above renaming-as-body would be illegal, since it
is not subtype conformant. However, if the full type declaration were
"type T is new Integer;", then it would be legal. It is intolerable for
the contents of the private part to affect the legality of a client in
Questions? Ask the ACAA Technical Agent