comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Array conversion and bounds
Date: Sun, 15 Apr 2018 14:34:42 +0200
Date: 2018-04-15T14:34:42+02:00	[thread overview]
Message-ID: <pavgt4$1ahd$1@gioia.aioe.org> (raw)
In-Reply-To: fjgoacFo8s4U1@mid.individual.net

On 2018-04-15 12:37, Niklas Holsti wrote:
> On 18-04-15 12:36 , Dmitry A. Kazakov wrote:
>> Do array bounds slide during conversion? Consider this:
>>
>>    type A is array (Integer range <>) of Whatever;
>>    type B is array (Unsigned_32 range <>) of Whatever;
>>
>>    X : A (-10..-1);
>>    Y : B (1..10);
>> begin
>>    Y := B (X); -- Is this OK?
>>
>> If bounds slide it must be OK, if bounds do not slide, it must raise
>> Constraint_Error.
>>
>> Any language lawyers?
> 
> I believe the bounds should _not_ slide, because the "target subtype" of 
> the conversion is type B, which is an _unconstrained_ array subtype.

Better to say, they should, but they do not. Clearly conversions like 
this should not require resorting to Unchecked_Conversion.

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de


  reply	other threads:[~2018-04-15 12:34 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-15  9:36 Array conversion and bounds Dmitry A. Kazakov
2018-04-15 10:37 ` Niklas Holsti
2018-04-15 12:34   ` Dmitry A. Kazakov [this message]
2018-04-15 13:11     ` Niklas Holsti
2018-04-15 13:24       ` Dmitry A. Kazakov
2018-04-15 18:21         ` Niklas Holsti
2018-04-15 20:29           ` Dmitry A. Kazakov
2018-04-15 17:55 ` Robert A Duff
2018-04-15 20:15   ` Dmitry A. Kazakov
replies disabled

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