Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Martin Sebor <sebor@roguewave.com>
To: Benjamin Kosnik <bkoz@redhat.com>
Cc: Paul Pogonyshev <pogonyshev@gmx.net>,
	libstdc++@gcc.gnu.org,         gdb@sourceware.org
Subject: Re: setting breakpoints with C++ typedef names [was: Re: debug  information]
Date: Fri, 24 Nov 2006 21:11:00 -0000	[thread overview]
Message-ID: <456762E8.2050703@roguewave.com> (raw)
In-Reply-To: <20061122130341.a4436ce2.bkoz@redhat.com>

Benjamin Kosnik wrote:
>>But still function names include full type name: `b 'bar(basic_pod<int>)''.
>>Not much of a problem in this case, but sometimes the full name is very
>>long...
> 
> 
> Oh. I finally understand you. Yes, this is a drag.
> 
> You want to be able to do:
> 
> (gdb) b bar(ipod)
> 
> instead of
> 
> (gdb) b bar(basic_pod<int>)

This is especially troublesome when the real type is private to
the implementation, as in, for example,

     void foo (std::map<T, U>::iterator);

In order for a user to set a breakpoint on foo they need to know
that the type of libstdc++'s map<T, U>::iterator is really called
     std::_Rb_tree_iterator<std::pair<const T, U> >
(and something completely different when using a different
implementation of the library).

I expect this use of private names to become even more pervasive
when (and if) typedef templates are implemented.

Martin


  parent reply	other threads:[~2006-11-24 21:11 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <200611191342.48724.pogonyshev@gmx.net>
     [not found] ` <20061121100701.6b980f48.bkoz@redhat.com>
     [not found]   ` <200611212225.28377.pogonyshev@gmx.net>
2006-11-22 12:03     ` Benjamin Kosnik
2006-11-22 13:35       ` Daniel Jacobowitz
2006-11-24 21:11       ` Martin Sebor [this message]
2006-11-24 21:28         ` Paul Pogonyshev

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=456762E8.2050703@roguewave.com \
    --to=sebor@roguewave.com \
    --cc=bkoz@redhat.com \
    --cc=gdb@sourceware.org \
    --cc=libstdc++@gcc.gnu.org \
    --cc=pogonyshev@gmx.net \
    /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