!standard 08.03(26/1) 04-04-20 AI95-00377/00 !class binding interpretation 04-04-20 !status received 04-03-23 !priority Low !difficulty Medium !subject Naming of generic child packages !summary !question !recommendation !wording !discussion --!corrigendum !example !ACATS test !appendix From: Stephen W. Baird Sent: Tuesday, March 23, 2004 12:34 AM Consider the following example: generic package G1 is end G1; generic package G1.G2 is end G1.G2; with G1; package I1 is new G1; with G1; package I1.G2 renames Standard; with G1.G2; with I1.G2; package Q1 renames I1.G2; -- legal? with G1.G2; with I1.G2; package Q2 is new I1.G2; -- legal? with G1.G2; with I1.G2; with System; procedure Q3 (X : System.Address := I1.G2'Address); -- legal? Should Q1, Q2, and Q3 be rejected? It seems to me that they should, but RM justification for this position is not obvious. In particular, the two "I1.G2" declarations, one a generic package and one a non-generic package rename, do not appear to be hidden from all visibility at the points where the name is used. One might argue that withing both G1.G2 and I1.G2 implicitly results in a view of package I1 which violates the first sentence of 8.3(26/1), but that seems like a stretch. ****************************************************************