comp.lang.ada
 help / color / mirror / Atom feed
From: Blady <p.p11@orange.fr>
Subject: Re: Renaming primitives.
Date: Thu, 11 Jan 2024 11:09:38 +0100	[thread overview]
Message-ID: <unoep3$2uqo6$2@dont-email.me> (raw)
In-Reply-To: <unnj4v$2nj5s$1@dont-email.me>

Le 11/01/2024 à 03:18, Randy Brukardt a écrit :
> "Blady" <p.p11@orange.fr> wrote in message
> news:unls1j$2f0up$3@dont-email.me...
>> Is a procedure renaming equivalent to a simple call?
> 
> General point: "Equivalent" is never true in programming language design. If
> construct A is equivalent in every way to construct B, then they have to be
> the same construct.
> 
> For instance, in your example below, the two subprogram declarations have
> different identifiers which have different visibility (two declarations
> cannot be at exactly the same place), so there is at least one way that
> they're not equivalent.
> 
> So, if you want to talk about "equivalence", you need to qualify that by
> what properties you are interested in.

Well, I hadn't find a better word :-(

> ...
>> What is happening if My_Generic_Handler change?
> 
> Nothing. The names in a renaming are evaluated when the renaming is
> declared. If there are parts that could change, the compiler has to save the
> values at the point of the renaming. That's true for all forms of renaming
> (some names, like package names, can't change meaning so the example isn't
> possible, of course).

Yet, the code:
    My_Log_3 ("Hei");
    My_Generic_Handler := My_Full_Handler'Access;
    My_Log_3 ("Hei");
gives:
Hei
Full Hei

I thought that was correct, wasn't it?
GNAT issue ?

> ...
>> I got:
>> test_20240110_renproc.adb:47:14: error: too many arguments in call to
>> "log"
>>
>> Is it a correct or a GNAT issue?
> 
> Looks like a bug to me. Not too surprising, though, this sort of thing is a
> special case in a compiler and often added to pass an ACATS test or user bug
> report. Such fixes can often not be fully general.

Thanks, I'll report it.

Pascal.


  reply	other threads:[~2024-01-11 10:09 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-10 10:37 Renaming primitives Blady
2024-01-10 11:38 ` Jeffrey R.Carter
2024-01-11 10:06   ` Blady
2024-01-11 11:06     ` Jeffrey R.Carter
2024-01-10 12:13 ` Dmitry A. Kazakov
2024-01-11  2:09   ` Randy Brukardt
2024-01-11  2:18 ` Randy Brukardt
2024-01-11 10:09   ` Blady [this message]
2024-01-12  3:59     ` Randy Brukardt
2024-01-12  9:47       ` J-P. Rosen
2024-01-12 23:36         ` Lawrence D'Oliveiro
2024-01-12 10:29       ` Blady
2024-01-12 10:42     ` Blady
replies disabled

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