CVS difference for ai12s/ai12-0138-1.txt
--- ai12s/ai12-0138-1.txt 2016/02/16 03:20:41 1.13
+++ ai12s/ai12-0138-1.txt 2021/02/11 04:04:07 1.14
@@ -181,7 +181,7 @@
with Pkg1;
package Pkg4.Child is
use Pkg4;
- type T3 (D2 : access Integer) is new Priv
+ type T3 (D2 : access Integer) is new Priv with null record
with Implicit_Dereference => D2; -- No check possible here.
end Pkg4.Child;
@@ -1006,5 +1006,21 @@
aspect is Boolean), so it seems better in the Legality Rules section. There
probably ought to be an AARM note to explain the reason for this rule in its
new position, but that's already the case (it's surely not obvious).
+
+****************************************************************
+
+From: Edmond Schonberg
+Sent: Tuesday, February 9, 2021 1:13 PM
+
+The final example in the AI includes the lines:
+
+
+ type T3 (D2 : access Integer) is new Priv
+ with Implicit_Dereference => D2; -- No check possible here.
+ end Pkg4.Child;
+
+Priv is declared in the parent unit Pkg4, and is a private extension. The
+declaration for T3 needs at least a “with null record” to be legal.
+(found while verifying that GNAT implements the AI correctly).
****************************************************************
Questions? Ask the ACAA Technical Agent