From: Simon Wright <simon@pushface.org>
Subject: Re: Booch Components 20020117
Date: 10 Feb 2002 12:32:17 +0000
Date: 2002-02-10T12:32:17+00:00 [thread overview]
Message-ID: <x7vd6zdv7ou.fsf@smaug.pushface.org> (raw)
In-Reply-To: u8za5qqb1.fsf@gsfc.nasa.gov
Stephen Leake <stephen.a.leake.1@gsfc.nasa.gov> writes:
> "Matthew Heaney" <mheaney@on2.com> writes:
>
> > "Simon Wright" <simon@pushface.org> wrote in message
> > news:x7vlmeuddd6.fsf@smaug.pushface.org...
> > > The way Storage Management is specified has changed significantly:
> > > you now supply a single generic parameter of type
> > > System.Storage_Pools.Root_Storage_Pool'Class. This will be painful
> > > to start with, but should simplify matters in the long run.
> >
> > I had trouble doing this:
> >
> > package Pools is
> > type Pool_Type is new Root_Storage_Pool with record ...;
> > Pool : Pool_Type;
> > end;
> >
> > generic
> > Pool : in out Root_Storage_Pool'Class;
> > package GP is
> >
> >
> > with Pools;
> > package P is new GP (Pools.Pool);
> >
> > The compiler complained that my Pool object wasn't the correct type. How
> > are you instantiating your generics which accept a generic formal pool
> > object?
>
> This got me too. You have to do:
>
> Pool => System.Storage_Pools.Root_Storage_Pool'Class (Pools.Pool)
>
> I thought it was a compiler bug, but both ObjectAda and GNAT agree on
> it. I never submitted a report. I didn't chase it down in the LRM,
> since it works :).
I'm afraid I agree with the smiley :-(
At one point I see i've used
Pool : BC.Support.Managed_Storage.Pool (10_000);
Pool_View : System.Storage_Pools.Root_Storage_Pool'Class
renames System.Storage_Pools.Root_Storage_Pool'Class (Pool);
which is a tad longwinded, I agree.
prev parent reply other threads:[~2002-02-10 12:32 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-19 7:11 Booch Components 20020117 Simon Wright
2002-02-06 23:35 ` Matthew Heaney
2002-02-07 15:12 ` Stephen Leake
2002-02-10 12:32 ` Simon Wright [this message]
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox