From: Tom Tromey <tromey@redhat.com>
To: "Kenneth Rose" <kenrose@kenrose.org>
Cc: gdb@sourceware.org
Subject: Re: Cast to result of whatis expression
Date: Tue, 07 Sep 2010 22:16:00 -0000 [thread overview]
Message-ID: <m3eid5w65u.fsf@fleche.redhat.com> (raw)
In-Reply-To: <784f56871ebbe612785c8be91771a9a5.squirrel@webmail.kenrose.org> (Kenneth Rose's message of "Tue, 7 Sep 2010 18:03:41 -0400")
>>>>> "Kenneth" == Kenneth Rose <kenrose@kenrose.org> writes:
Kenneth> I'm writing something similar to gdb-stl-views for some custom
Kenneth> container classes that we have.
I think that these days it is better to use the Python pretty-printing
infrastructure instead. It has a number of advantages -- it works no
matter how the object is printed (in a stack trace, embedded in some
other structure), and it works with MI.
Kenneth> I need to explicitly cast foo.m_x to the appropriate type, but
Kenneth> I'm at a loss as to how to get that type from gdb. "whatis
Kenneth> foo" gives me back "Container<int>". Is there anyway of
Kenneth> extracting the "int" part of that result and using that as the
Kenneth> type to cast to?
You can do this in Python :-)
You could probably do it (with some difficulty) using a combination of
logging, "shell", and "source".
Kenneth> I'm using the stock GDB that ships with Mac OS X 10.6 (GNU gdb
Kenneth> 6.3.50-20050815 (Apple version gdb-1461). I know... it's old.
Ah, Apple's fork. Unfortunately it is Python-free.
You could try GDB 7.2. It has some known bugs on Mac OS, but I have
also heard reports of it work.
Tom
next prev parent reply other threads:[~2010-09-07 22:16 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-07 22:04 Kenneth Rose
2010-09-07 22:16 ` Tom Tromey [this message]
2010-09-10 18:09 ` Kenneth Rose
2010-09-10 19:57 ` Tom Tromey
2010-09-07 22:04 Kenneth Rose
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m3eid5w65u.fsf@fleche.redhat.com \
--to=tromey@redhat.com \
--cc=gdb@sourceware.org \
--cc=kenrose@kenrose.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox