* Irreflective girl, our Ada
@ 2012-03-22 22:48 Marius Amado-Alves
2012-03-23 21:36 ` Shark8
0 siblings, 1 reply; 3+ messages in thread
From: Marius Amado-Alves @ 2012-03-22 22:48 UTC (permalink / raw)
I am trying to know a subprogram name from its access value. GNAT has part (all?) of the device in place for this.
GNAT.Traceback.Symbolic.Symbolic_Traceback
((1 => My_Subprogram'Code_Address))
gives the desired name. Note that must be 'Code_Address, not 'Address (this is important). And compile with the -g option, etc.
But what I have is a pointer to a subprogram (if I had the identifier I would not need this), and alas
GNAT.Traceback.Symbolic.Symbolic_Traceback
((1 => My_Subprogram_Ptr.all'Code_Address))
does not compile. Is there a way to convert Access to Code_Address (not Address)? Or any other trick to get the name of a subprogram identified solely by its Access value?
Thanks a lot.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Irreflective girl, our Ada
2012-03-22 22:48 Irreflective girl, our Ada Marius Amado-Alves
@ 2012-03-23 21:36 ` Shark8
2012-03-23 23:23 ` Marius Amado-Alves
0 siblings, 1 reply; 3+ messages in thread
From: Shark8 @ 2012-03-23 21:36 UTC (permalink / raw)
On Thursday, March 22, 2012 5:48:22 PM UTC-5, marius63 wrote:
> I am trying to know a subprogram name from its access value. GNAT has part (all?) of the device in place for this.
>
> GNAT.Traceback.Symbolic.Symbolic_Traceback
> ((1 => My_Subprogram'Code_Address))
>
> gives the desired name. Note that must be 'Code_Address, not 'Address (this is important). And compile with the -g option, etc.
>
> But what I have is a pointer to a subprogram (if I had the identifier I would not need this), and alas
>
> GNAT.Traceback.Symbolic.Symbolic_Traceback
> ((1 => My_Subprogram_Ptr.all'Code_Address))
>
> does not compile. Is there a way to convert Access to Code_Address (not Address)? Or any other trick to get the name of a subprogram identified solely by its Access value?
>
> Thanks a lot.
Have you tried the Address_to_Access conversions?
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Irreflective girl, our Ada
2012-03-23 21:36 ` Shark8
@ 2012-03-23 23:23 ` Marius Amado-Alves
0 siblings, 0 replies; 3+ messages in thread
From: Marius Amado-Alves @ 2012-03-23 23:23 UTC (permalink / raw)
> Have you tried the Address_to_Access conversions?
Yes, perfect Ada (not our girl) would let us instantiate it for subprograms, and perfect GNAT would provide a To_Code_Address function...
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-03-23 23:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-22 22:48 Irreflective girl, our Ada Marius Amado-Alves
2012-03-23 21:36 ` Shark8
2012-03-23 23:23 ` Marius Amado-Alves
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox