From: Jeffrey Carter <spam@spam.com>
Subject: Re: Interesting effects in array renaming
Date: Sun, 22 Jun 2003 17:24:17 GMT
Date: 2003-06-22T17:24:17+00:00 [thread overview]
Message-ID: <3EF5E6B8.3030203@spam.com> (raw)
In-Reply-To: bd4fmr$p4kfn$1@ID-77047.news.dfncis.de
Dmitry A. Kazakov wrote:
> ---------- test.adb
> with Ada.Text_IO; use Ada.Text_IO;
>
> procedure Test is
> type Some_Array is array (Integer range <>) of Integer;
>
> procedure Foo (X : Some_Array) is
> subtype Constrained is Some_Array (1..X'Length);
> XX : Constrained renames X;
> begin
> Put_Line
> ( "XX'Range:"
> & Integer'Image (XX'First)
> & ".."
> & Integer'Image (XX'Last)
> & ", Constrained'Range:"
> & Integer'Image (Constrained'First)
> & ".."
> & Integer'Image (Constrained'Last)
> );
> end Foo;
>
> Object : Some_Array (-3..2) := (-3, -2, -1, 0, 1, 2);
> begin
> Foo (Object);
> end Test;
> ---------- test.adb
>
> Surprisingly the above produces different ranges for XX and its declared
> subtype. Isn't something wrong here?
Note that you can also do
subtype Constrained is Some_Array (1..X'Length-1);
or
subtype Constrained is Some_Array (1..3);
with similar results. You can also do
XX : Some_Array renames X;
which perhaps demonstrates more clearly where the object's subtype comes
from.
--
Jeff Carter
"English bed-wetting types."
Monty Python & the Holy Grail
next prev parent reply other threads:[~2003-06-22 17:24 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-06-22 14:52 Interesting effects in array renaming Dmitry A. Kazakov
2003-06-22 17:24 ` Jeffrey Carter [this message]
2003-06-23 8:12 ` Dmitry A. Kazakov
2003-06-23 10:29 ` Georg Bauhaus
2003-06-23 11:37 ` Dmitry A. Kazakov
2003-06-23 13:28 ` Georg Bauhaus
2003-06-24 7:35 ` Dmitry A. Kazakov
2003-06-24 14:38 ` Georg Bauhaus
2003-06-25 10:28 ` Dmitry A. Kazakov
2003-06-25 14:23 ` Georg Bauhaus
2003-06-25 19:00 ` Dmitry A. Kazakov
2003-06-24 2:35 ` Robert I. Eachus
2003-06-24 7:35 ` Dmitry A. Kazakov
2003-06-24 10:08 ` Lutz Donnerhacke
2003-06-24 11:53 ` Georg Bauhaus
2003-06-24 12:48 ` Dmitry A. Kazakov
2003-06-26 2:54 ` Randy Brukardt
2003-06-26 6:27 ` Vinzent Hoefler
2003-06-26 12:44 ` Georg Bauhaus
2003-06-26 13:01 ` Vinzent Hoefler
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox