comp.lang.ada
 help / color / mirror / Atom feed
From: stt@henning.camb.inmet.com (Tucker Taft)
Subject: Re: Visibility of package within package
Date: 1996/08/02
Date: 1996-08-02T00:00:00+00:00	[thread overview]
Message-ID: <DvIC1s.5EJ.0.-s@inmet.camb.inmet.com> (raw)
In-Reply-To: 32009A4C.147C@comm.hq.af.mil


Erik Masella (emasella@mtl.marconi.ca) wrote:

> Could anybody explain to me why the following will not work:
> 
> with Generic_Pkg;
> package A_Pkg is
>    package B_Pkg is new Generic_Pkg(...);
> ..
> end A_Pkg;
> 
> --------------------------------
> 
> with A_Pkg;
> package body C_Pkg is
>    procedure Init is
>    begin
>       A_Pkg.B_Pkg.Do_Something(...);
>    end Init;
> end C_Pkg;
> 
> ==> Why isn't B_Pkg visible within C_Pkg?  From what I understand,
> "Software Engineering with Ada" from Booch (2nd ed.) says at p.383 that
> this is possible (but he did not use generics).
> 
> I'd greatly appreciate some insight into this.

Tucker Taft wrote:

> Your code looks OK, but it is hard to be sure without a complete
> example, since we don't know what is inside "Generic_Pkg".  When
> you have mysteries like this, it is most useful to include an
> actual listing with error messages from the compiler.  Surprisingly
> often, there is some other problem than the one you first suspect.
> 
> In any case, it is possible that the compiler has a bug, but your
> example is so simple and straightforward that it seems more likely
> that something else is wrong.

Chad Bremmon (chad.bremmon@comm.hq.af.mil) wrote:

> Don't you still have to with in "With A_Pkg.BPkg;" inside of your C_Pkg ?

No.  B_Pkg is not a separate library unit.  You only need to mention
library units in "with" clauses.  B_Pkg is physically nested inside
A_Pkg, so it is a mystery why the above doesn't compile.  Again, a
complete example, with compiler messages, is the only way to figure it out.

> Chad

: > : Erik Masella
: > : emasella@mtl.marconi.ca

-Tucker Taft   stt@inmet.com   http://www.inmet.com/~stt/
Intermetrics, Inc.  Cambridge, MA  USA




  parent reply	other threads:[~1996-08-02  0:00 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1996-07-31  0:00 Visibility of package within package Erik Masella
1996-08-01  0:00 ` Tucker Taft
1996-08-01  0:00   ` Chad Bremmon
1996-08-01  0:00     ` Robert A Duff
1996-08-02  0:00     ` Tucker Taft [this message]
  -- strict thread matches above, loose matches on Subject: below --
1996-08-02  0:00 Erik Masella
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox