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.3 required=5.0 tests=BAYES_00,INVALID_MSGID, MSGID_RANDY autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,84b1828b2b26fc4f X-Google-Attributes: gid103376,public From: Robert Dewar Subject: Re: Common ancestor (visibility rules) Date: 2000/03/30 Message-ID: <8bu64t$60h$1@nnrp1.deja.com>#1/1 X-Deja-AN: 604090572 References: <8bprin$a37$1@nnrp1.deja.com> <8bq726$lo8$1@nnrp1.deja.com> <8bsgpf$96f$1@nnrp1.deja.com> <8bskgp$ctu$1@nnrp1.deja.com> <8bt42b$tfe$1@nnrp1.deja.com> X-Http-Proxy: 1.0 x28.deja.com:80 (Squid/1.1.22) for client 205.232.38.14 Organization: Deja.com - Before you buy. X-Article-Creation-Date: Thu Mar 30 00:12:27 2000 GMT X-MyDeja-Info: XMYDJUIDrobert_dewar Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.61 [en] (OS/2; I) Date: 2000-03-30T00:00:00+00:00 List-Id: In article <8bt42b$tfe$1@nnrp1.deja.com>, dmitry6243@my-deja.com wrote: > In article <8bskgp$ctu$1@nnrp1.deja.com>, > Robert Dewar wrote: > with A; use A; -- OK with Aonix, error in GNAT >(v3.12) The above is perfectly fine, and compiles fine with all versions of GNAT, you are either compiling code different from what you quoted, or you have a messed up copy of GNAT. > I.e. Standard is a unit, but not a library unit. Then there seems to be > two arts of unit names: library names starting with Standard that can be > *used* but not *withed*, then "un-library" names without Standard > prefix. They can be *withed* and sometimes *used*. Right? No one EVER needs to use a diction like with A; use Standard.A; so it is a waste of time to discuss it. and your two "arts" of unit names is pure confusion, please carefully reread my previous post (I don't know how to make it clearer!) > It is works in GNAT and illegal in Aonix, but see above. I *think* it should be legal, but since no one would ever write this, it is totally pointless, it is not important. > So GNAT is wrong? No, of course GNAT handles this right. You should perhaps publish the ENTIRE code you have that GNAT rejected. You gave two quite different examples of code so far, and neither had with A; use A; in it. > I do not see how. Either Standard.A is the name of A or not. If yes then > why "with Standard.A;" is illegal. If not, why "use Standard.A;" is > legal. My previous post really answered this quite clearly. > It is clear that there is no need to *with* Standard for it is always > *withed*. The question is what the name of a library unit is. Does it > include "Standard." as prefix or not. IF the fully qualified name of A > is Standard.A, then "with Standard.A; use Standard.A;" SHALL be correct. That's quite wrong, please reread my previous note. I will say the rule once more, after that you really need to read and figure it out :-) You can only WITH a library unit, library units are the units that are child units of Standard. So if you say with Standard.A; you are saying that Standard.A is a library unit, i.e. that it is a child of Standard, i.e. that its fully qualified nanme is Standard.Standard.A. The fully qualified name always includes Standard, but you can NOT use this fully qualified name in a WITH clause! Sent via Deja.com http://www.deja.com/ Before you buy.