From: hreba <f_hreba@yahoo.com.br>
Subject: Re: storage error: stack overflow
Date: Tue, 18 Aug 2015 22:48:48 -0300
Date: 2015-08-18T22:48:48-03:00 [thread overview]
Message-ID: <d3i5k1Fh07U1@mid.individual.net> (raw)
In-Reply-To: <mqvejr$hai$2@dont-email.me>
On 08/18/2015 11:16 AM, Jeffrey R. Carter wrote:
> On 08/18/2015 07:02 AM, hreba wrote:
>>
>> Huh? As much as I know you cannot declare variables of a type with unknown
>> storage requirements at compile time, such as class-wide types and arrays with
>> unknown range.
>
> These are "indefinite types". You can declare an object of an indefinite type as
> long as you supply an initialization expression:
>
> S : String := "Hello";
>
> V : T'Class := Some_Function;
>
If the object is initialized, the storage requirement is known at
compile type. My situation is a typical object orientation case as shown
in a lot of examples where you have a (possibly abstract) base type and
several extensions and where the dynamic type of a variable is not known
at compile time. Classic example would be an inhomogeneous list (I know
in practice you use a container for that, it is just an example).
My knowledge of Ada exceeds Ada 95 only by very little but I am pretty
sure that in such a case one uses variables of a class-wide type, and as
one cannot initialize them one has to declare them as access types.
Or, if I am wrong, what would be the best practice for that?
--
Frank Hrebabetzky +55 / 48 / 3235 1106
Florianopolis, Brazil
next prev parent reply other threads:[~2015-08-19 1:48 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-11 21:53 storage error: stack overflow hreba
2015-08-11 22:19 ` Jeffrey R. Carter
2015-08-12 15:01 ` hreba
2015-08-12 16:00 ` AdaMagica
2015-08-12 17:51 ` Jeffrey R. Carter
2015-08-13 2:17 ` hreba
2015-08-12 8:27 ` briot.emmanuel
2015-08-13 1:34 ` hreba
2015-08-13 2:53 ` Jeffrey R. Carter
2015-08-13 7:05 ` Simon Wright
2015-08-14 13:53 ` hreba
2015-08-14 16:01 ` Simon Wright
2015-08-14 17:00 ` Simon Wright
2015-08-13 7:19 ` Simon Wright
2015-08-14 13:20 ` hreba
2015-08-12 10:31 ` Markus Schöpflin
2015-08-13 1:36 ` hreba
2015-08-12 10:57 ` Simon Wright
2015-08-13 0:55 ` hreba
2015-08-13 6:58 ` Simon Wright
2015-08-18 2:16 ` hreba
2015-08-18 5:49 ` Jeffrey R. Carter
2015-08-18 7:24 ` Egil H H
2015-08-18 12:23 ` hreba
2015-08-18 12:37 ` Jacob Sparre Andersen
2015-08-18 14:02 ` hreba
2015-08-18 14:11 ` Dmitry A. Kazakov
2015-08-18 14:16 ` Jeffrey R. Carter
2015-08-18 20:56 ` Randy Brukardt
2015-08-19 1:48 ` hreba [this message]
2015-08-19 5:10 ` Jeffrey R. Carter
2015-08-19 8:44 ` Georg Bauhaus
2015-08-19 11:56 ` hreba
2015-08-19 20:53 ` Bob Duff
2015-08-18 14:15 ` Egil H H
2015-08-19 13:07 ` hreba
2015-08-18 14:16 ` Jeffrey R. Carter
2015-08-19 13:12 ` hreba
2015-08-19 20:47 ` Bob Duff
2015-08-19 21:47 ` Jeffrey R. Carter
2015-08-20 7:18 ` Dmitry A. Kazakov
2015-08-20 20:48 ` Randy Brukardt
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox