CVS difference for ai05s/ai05-0288-1.txt

Differences between 1.2 and version 1.3
Log of other versions for file ai05s/ai05-0288-1.txt

--- ai05s/ai05-0288-1.txt	2012/02/19 04:54:05	1.2
+++ ai05s/ai05-0288-1.txt	2012/03/10 06:42:31	1.3
@@ -1,6 +1,7 @@
-!standard 12.5.4(5)                                   12-02-13  AI05-0288-1/01
+!standard 12.5.4(5)                                   12-03-09  AI05-0288-1/02
 !class binding interpretation 12-02-13
 !status Amendment 2012 12-02-13
+!status ARG Approved 10-0-0  12-02-24
 !status work item 12-02-13
 !status received 11-12-19
 !priority Low
@@ -28,7 +29,7 @@
     package body Pack0 is
         procedure Proc (N : Natural) is
         begin
-            Text_IO.Put_Line (Natural (N));
+            Text_IO.Put_Line (Natural'Image (N));
         end Proc;
     end Pack0;
 
@@ -69,15 +70,15 @@
     end Pack2;
 
 If Pack0.Proc'access were used with an expected type Actual_Acc, it
-would be illegal by 3.10.2(32).  But since only mode conformance, not
+would be illegal by 3.10.2(32). But since only mode conformance, not
 subtype conformance, is required when matching generic formal
 access-to-subprogram types, this appears to be a way to get around
 this restriction and pass a value that doesn't belong to the actual
-subprogram parameter's subtype.  As a result, there is no any language
+subprogram parameter's subtype. As a result, there is no language
 rule that would make the program illegal, nor is there any point at
 which a Constraint_Error should be raised on the parameter -1.
 
-Is a fix is needed? (Yes.)
+Is a fix needed? (Yes.)
 
 !recommendation
 
@@ -109,6 +110,9 @@
 This clearly would be less incompatible (only making unlikely cases illegal),
 but the rules needed are more complex (and needed in two places), so we adopt
 the simpler rule.
+
+GNAT does not accept this example, so the compatibility issue is even less likely
+in practice. (AdaMagic-derived compilers do accept this example.)
 
 !corrigendum 12.5.4(5)
 

Questions? Ask the ACAA Technical Agent