From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,ce0900b60ca3f616 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-11-07 11:38:36 PST Path: archiver1.google.com!news1.google.com!sn-xit-02!supernews.com!newsfeed.direct.ca!look.ca!hammer.uoregon.edu!skates!not-for-mail From: Stephen Leake Newsgroups: comp.lang.ada Subject: Re: List container strawman Date: 07 Nov 2001 14:27:08 -0500 Organization: NASA Goddard Space Flight Center Message-ID: References: <9rti6v$hcu$1@news.huji.ac.il> <1EyE7.10050$xS6.13527@www.newsranger.com> <9rue9f$j4t$1@nh.pace.co.uk> <9ruiet$kqg$1@nh.pace.co.uk> <3BE3235D.E292B890@boeing.com> <9s6a60$a49$1@nh.pace.co.uk> <9s6o5m$fsi$1@nh.pace.co.uk> NNTP-Posting-Host: anarres.gsfc.nasa.gov Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: skates.gsfc.nasa.gov 1005161263 10558 128.183.220.71 (7 Nov 2001 19:27:43 GMT) X-Complaints-To: dscoggin@cne-odin.gsfc.nasa.gov NNTP-Posting-Date: 7 Nov 2001 19:27:43 GMT User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7 Xref: archiver1.google.com comp.lang.ada:16009 Date: 2001-11-07T19:27:43+00:00 List-Id: "Marin David Condic" writes: > Hmmmmmmm.......... > > > So basically, you're saying that a library level generic that contained as > part of it a Controlled element, you'd be able to instantiate it in a > procedure (non-library level)? But if a data item in it is itself derived > from Controlled, you can't? (Seems kind of strange, but I'm sure there's > going to be some corner-case of the rules to explain it.) The issue is where the Controlled _type_ is declared, not where the _object_ of that type is declared. The _type_ must be declared at library level, so pointers to it's base class are at the same level as Controlled itself. In this case, the Controlled type is still declared at library level; the generic instantiation declares another type, which happens to contain a component object of the Controlled type. > The Controlled thing clearly can't have anything to do with the You need to distinguish between declaring the type and declaring the object. "Thing" is not specific enough. -- -- Stephe