From: "Randy Brukardt" <randy@rrsoftware.com>
Subject: Re: Formal Subprogram Access
Date: Mon, 12 Feb 2018 23:51:53 -0600
Date: 2018-02-12T23:51:53-06:00 [thread overview]
Message-ID: <p5tudq$5eb$1@franka.jacob-sparre.dk> (raw)
In-Reply-To: p5mflm$ibq$1@dont-email.me
"Jeffrey R. Carter" <spam.jrcarter.not@spam.not.acm.org> wrote in message
news:p5mflm$ibq$1@dont-email.me...
> On 02/10/2018 04:03 AM, Randy Brukardt wrote:
>>
>> Why do you think this is correct? I can't read 3.10.2(32/5) in a way
>> which
>> would prevent using a formal subprogram in this way (assuming that the
>> profile matches, which is does trivially in this case). Indeed, there is
>> specifically an exception allowing "an anonymous access type of an access
>> parameter."
>
> IIRC, you can't take 'Access of some attributes that act as subprograms,
> but you can use them as the actual for a generic formal subprogram. So a
> generic can't take 'Access of a generic formal subprogram.
There's no such rule in the RM. As Christoph noted, a generic formal
subprogram has convention Ada, 'Access is allowed. If you pass an attribute
to it, you have to wrap it in a real subprogram for this reason. (There is a
lot of code specifically to do this in Janus/Ada, it probably never has been
tested outside of a single ACATS test -- I don't think anyone ever has had a
reason to pass an attribute like Succ as a formal subprogram.)
If you rename such an attribute, however, the convention stays the same, so
'Access isn't allowed then. But renaaming a formal subprogram certainly
shouldn't change whether or not 'Access is allowed.
As I said, file a bug report. Even if I'm wrong about the legality of
'Access on a formal subprogram, the renames should work the same way.
Randy.
next prev parent reply other threads:[~2018-02-13 5:51 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-09 22:11 Formal Subprogram Access Jeffrey R. Carter
2018-02-10 3:03 ` Randy Brukardt
2018-02-10 9:57 ` Jeffrey R. Carter
2018-02-13 5:51 ` Randy Brukardt [this message]
2018-02-13 9:24 ` AdaMagica
2018-02-13 9:41 ` Dmitry A. Kazakov
2018-02-13 10:28 ` AdaMagica
2018-02-14 0:47 ` Randy Brukardt
2018-02-14 8:19 ` Dmitry A. Kazakov
2018-02-14 10:01 ` Jacob Sparre Andersen
2018-02-14 11:07 ` Dmitry A. Kazakov
2018-02-13 12:24 ` Simon Wright
2018-02-14 0:53 ` Randy Brukardt
2018-02-14 14:36 ` Simon Wright
2018-02-15 4:56 ` Randy Brukardt
2018-02-15 13:12 ` Simon Clubley
2018-02-15 16:38 ` Simon Wright
2018-02-15 18:40 ` Simon Clubley
2018-02-15 16:19 ` Simon Wright
2018-02-15 23:03 ` Randy Brukardt
2018-02-13 17:34 ` Jeffrey R. Carter
2018-02-13 18:31 ` AdaMagica
2018-02-14 0:57 ` Randy Brukardt
2018-02-10 14:55 ` AdaMagica
2018-02-21 17:51 ` Jeffrey R. Carter
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox