comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Optimizing Boundary Checks
Date: Sat, 14 Jun 2003 10:34:34 +0200
Date: 2003-06-14T10:34:34+02:00	[thread overview]
Message-ID: <bcemhm$hr8tt$1@ID-77047.news.dfncis.de> (raw)
In-Reply-To: bccpn8$hogis$1@ID-175126.news.dfncis.de

Vinzent Hoefler wrote:

> As an example, currently
> 
> |x : My_Enum;
> |
> |for i in x'Range loop ...
> 
> doesn't work, you have to write
> 
> |for in in My_Enum'Range loop
> 
> each time. Is there any convincing explanation why it isn't allowed to
> use the actual type of a variable instead of the type itself? I can
> imagine situations (especially with subtypes) where it could be handy
> to use the variables' type instead of an explicit type specification.

Another example where getting the actual type could be useful:

procedure Foo (X, Y : Object'Class) is
begin
   if X in Y'Class then -- Illegal ín Ada
      ...

   [However the same effect could be achieved if Tag were comparable.]

declare
   Z : Y'Class; -- Steals discriminants and the tag
                -- of possibly limited Y

-- 
Regards,
Dmitry A. Kazakov
www.dmitry-kazakov.de



  parent reply	other threads:[~2003-06-14  8:34 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-13 11:49 Optimizing Boundary Checks Preben Randhol
2003-06-13 12:03 ` Erlo Haugen
2003-06-13 12:38   ` Vinzent Hoefler
2003-06-13 12:47     ` Preben Randhol
2003-06-13 13:28       ` Vinzent Hoefler
2003-06-13 12:42   ` Preben Randhol
2003-06-13 12:48     ` Preben Randhol
2003-06-13 13:28       ` Vinzent Hoefler
2003-06-13 13:56         ` Preben Randhol
2003-06-13 14:42           ` Vinzent Hoefler
2003-06-13 15:25             ` Preben Randhol
2003-06-13 15:34               ` Vinzent Hoefler
2003-06-14 10:45                 ` Preben Randhol
2003-06-14 14:59                   ` James Rogers
2003-06-13 13:33       ` Peter Amey
2003-06-13 13:34 ` Martin Dowie
2003-06-13 13:48   ` Vinzent Hoefler
2003-06-13 14:37     ` Martin Dowie
2003-06-13 15:12       ` Vinzent Hoefler
2003-06-14  2:01         ` Jeffrey Carter
2003-06-16 11:23           ` Vinzent Hoefler
2003-06-14  8:34         ` Dmitry A. Kazakov [this message]
2003-06-14 17:20         ` Robert I. Eachus
2003-06-16 11:23           ` Vinzent Hoefler
2003-06-18 20:58             ` Brian Gaffney
2003-06-13 13:45 ` Dale Stanbrough
replies disabled

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