This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: Symbols/blocks questions
On Sun, Sep 20, 2009 at 08:51:54AM -0700, Joel Brobecker wrote:
> > Well, string rendition is not really a challenge. You take
> > struct block *, and then use phex :-) The id need not be
> > stable across debug sessions, it just should be stable within
> > one debug session.
>
> OK - I just thought that you wanted the user to be able to identify
> these blocks from the source code. The same way we do when doing
>
> (gdb) print FUNC::VAR
>
> If you think people will be happy with an arbitrary block ID, then
> indeed, that's easy (it's actually how task IDs are identified in
> VxWorks, it's the address of the TCB).
FWIW, I think we should avoid using internal pointers in the MI
interface. Not only does it open up a can of worms (should we really
be dereferencing user-supplied pointers? how long are their
lifetimes?), but it's going to make it hard to reproduce bugs given an
MI session transcript.
The inline function support has a way of representing blocks as
tuples. That might help. The tuples are start address and "depth";
the depth number would be different here, but serves the same
purpose.
--
Daniel Jacobowitz
CodeSourcery