comp.lang.ada
 help / color / mirror / Atom feed
From: Stefan Lucks <lucks@th.informatik.uni-mannheim.de>
Subject: Re: Generic Zero Length Array
Date: Fri, 22 Feb 2008 15:23:42 +0100
Date: 2008-02-22T15:23:42+01:00	[thread overview]
Message-ID: <Pine.LNX.4.64.0802221510150.9614@th.informatik.uni-mannheim.de> (raw)
In-Reply-To: <9b771018-fb0b-42eb-ae00-12ee3eda69b2@p43g2000hsc.googlegroups.com>


On Fri, 22 Feb 2008, shaunpatterson@gmail.com wrote:

> How do I initialize this array when I can't know what type it is or
> will be?

> if Error_Condition then
>  declare
>    type Result is new Element_List (Indexing.First + 1 ..
> Indexing'First);
>    Result_String : Result;

     Result_String : Result := (others => Some_Default_Value);

>  begin
>     return Element_List (Result);
>  end;
> end if;



This should work. The default value doesn't matter at all, because the 
array is empty. But you still need to know a default value of the 
appropriate type.


BTW, why do you declare the type "Result" at all? The following should 
work as well:

   if ... then
      declare
         Result_String: Element_List(Indexing'First+1 .. Indexing'First)
           := (others => Some_Default_Value);
      begin
         return Result_String;
      end;
   end if;





-- 
Stefan Lucks      (moved to Bauhaus-University Weimar, Germany)
 		       <Stefan.Lucks at medien.uni-weimar.de>
------  I  love  the  taste  of  Cryptanalysis  in  the  morning!  ------





  parent reply	other threads:[~2008-02-22 14:23 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-22 13:31 Generic Zero Length Array shaunpatterson
2008-02-22 13:53 ` Egil Høvik
2008-02-22 13:55   ` shaunpatterson
2008-02-22 14:11     ` Georg Bauhaus
2008-02-22 19:25   ` Randy Brukardt
2008-02-22 23:01     ` Adam Beneschan
2008-02-23  9:30       ` Dmitry A. Kazakov
2008-02-23 14:27       ` Robert A Duff
2008-02-23 16:16         ` Dmitry A. Kazakov
2008-02-25 16:41         ` Adam Beneschan
2008-02-25 19:14           ` Robert A Duff
2008-02-22 19:25   ` Randy Brukardt
2008-02-22 19:25   ` Randy Brukardt
2008-02-22 14:23 ` Stefan Lucks [this message]
2008-02-22 16:52   ` Adam Beneschan
2008-02-22 14:26 ` Robert A Duff
2008-02-22 15:22 ` Stefan Bellon
2008-02-22 23:03   ` Adam Beneschan
2008-02-23 10:19     ` Stefan Bellon
replies disabled

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