"Tucker Taft" wrote: > Unfortunately, Mark, Marc, and Pat all forgot to mention that you > have to "with" the child unit where you plan to instantiate it. > The way to think about a "with" clause for a child is that it effectively > inserts the child into the parent. With a child of a generic, > inserting the child into the generic parent means that all instances > of the generic parent now include the generic child nested within > them. You can then instantiate one of those nested generics, > given any instance of the parent. What I wound up with was (using gnat 3.13p): --- GenParent.ads generic ... package GenParent is ... end GenParent; --- GenParent-GenChild.ads generic package GenParent.GenChild is ... end GenParent.GenChild; --- InstantiatedParent.ads with GenParent; package InstantiatedParent is new GenParent(...); --- InstantiatedParent - InstantiatedChild.ads with GenParent.GenChild; -- have to with the generic child package (1) package InstantiatedParent.InstantiatedChild is new InstantiatedParent.GenChild; ---- (1) Is this what you meant? Is the above the way to do it? Any better ways? > But the key thing to remember is that the nested generic is only > made visible where a "with" clause for the generic child applies. Grateful for any and all help. Regards, Peter -- Peter Hend�n http://www.algonet.se/~phenden ICQ: 14672398 Teknisk Dokumentation AB http://www.tdab.com