From: Matthew Heaney <matthew_heaney@acm.org>
Subject: Re: Private Children
Date: 1999/06/21
Date: 1999-06-21T00:00:00+00:00 [thread overview]
Message-ID: <m3yahd4bet.fsf@mheaney.ni.net> (raw)
In-Reply-To: 376E70A5.F77E558D@averstar.com
On 21 Jun 1999 17:04, Tucker Taft <stt@averstar.com> wrote:
> To answer the question posed by this new question, the answer
> given by Dale was correct, that private children provide "compilation
> privacy." If you want to allow something to be "with"ed by public
> children's specs, but contain content that is only visible to
> the private part of the child's spec, the following idiom works:
>
> package Mostly_Private is
> private
> ... -- Declarations visible only in private part of other public
> ... -- siblings
> end Mostly_Private;
>
> That is, put the entire set of declarations in the private part
> of a public child.
I did what I think you wanted me to do, but got this error message:
gcc -c -gnatc /home/matt/p-c2.ads
p-c2.ads:9:23: "I1" is not a visible entity of "C1"
Is this a compiler bug, or did I misunderstand what you said?
Can a package really see the private part of its sibling? I thought
that only your own children could see your private part.
Or did you mean for me to put I1 in the private part of P, not P.C1?
--STX
package P is
pragma Pure;
end P;
package P.C1 is
private
I1 : Integer;
end P.C1;
with P.C1;
package P.C2 is
I2 : Integer;
private
I3 : Integer := P.C1.I1;
end P.C2;
next prev parent reply other threads:[~1999-06-21 0:00 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
1999-06-20 0:00 Private Children Matthew Heaney
1999-06-21 0:00 ` Dale Stanbrough
1999-06-21 0:00 ` Ted Dennison
1999-06-21 0:00 ` Tucker Taft
1999-06-21 0:00 ` Matthew Heaney [this message]
1999-06-21 0:00 ` Tucker Taft
1999-06-22 0:00 ` Richard D Riehle
1999-06-22 0:00 ` Dale Stanbrough
1999-06-22 0:00 ` Matthew Heaney
1999-06-23 0:00 ` Dale Stanbrough
1999-06-23 0:00 ` Matthew Heaney
1999-06-23 0:00 ` Dale Stanbrough
1999-06-23 0:00 ` Richard D Riehle
1999-06-23 0:00 ` Vladimir Olensky
1999-06-23 0:00 ` Richard D Riehle
1999-06-24 0:00 ` Hyman Rosen
1999-06-24 0:00 ` Richard D Riehle
1999-06-23 0:00 ` John Duncan
1999-06-24 0:00 ` Dale Stanbrough
1999-06-22 0:00 ` Richard D Riehle
1999-06-21 0:00 ` Matthew Heaney
1999-06-25 0:00 ` Robert Dewar
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox