Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Vladimir Prus <vladimir@codesourcery.com>
To: "Douglas Evans" <dje@google.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: RFA: patch to fix multi-breakpoint enable/disable handling of inline functions
Date: Thu, 27 Dec 2007 19:20:00 -0000	[thread overview]
Message-ID: <200712272136.04574.vladimir@codesourcery.com> (raw)
In-Reply-To: <e394668d0711261522s32aff5a6h3b00aa52b76a304c@mail.gmail.com>

On Tuesday 27 November 2007 02:22:40 Douglas Evans wrote:
> How about this version?
> 
> Here I use libiberty/hashtab.c to determine function name ambiguity.
> 
> It turns out the bug exists for constructors too.  I.e.
> l->function_name for "Derived" in the gdb.cp/mb-ctor testcase is
> "Derived" for both locations.  I wonder if for this particular
> situation l->function_name should record an "enhanced" name to
> distinguish them.

Hi Doug,
sorry for slow reply. I think this version of patch is fine, but
I don't have the right to approve it.

Speaking about the constructors issue you bring -- right, for
reasons unknown the function name for constructor does not
include parameter types (either in plain text, or mangled).

Storing mangled name would require two bits:

1. Learning how to get than mangled name.
2. Changing expand_line_sal_maybe to cope with this.
Right now, if you set breakpoint at function name, we first
expand locations, and then check that all newly found locations
belong to a function of the same name. So, if you set a breakpoint
on a specific instantiation of template function that is inline,
you'd have breakpoint on all inlined instances of that instantiations,
but not on other instantiations.

Now if we use mangled name of constructor, then setting breakpoint on
constructor by name won't set breakpoint on the other constructor.
It might require some tweaks to get right

- Volodya


  parent reply	other threads:[~2007-12-27 18:37 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-16  4:12 Doug Evans
2007-10-22 21:25 ` Douglas Evans
2007-10-22 21:26   ` Daniel Jacobowitz
2007-11-05 20:06     ` Douglas Evans
2007-11-13 21:10   ` Vladimir Prus
2007-11-14 22:25     ` Douglas Evans
2007-11-14 22:49       ` Douglas Evans
2007-11-26 23:22         ` Douglas Evans
2007-12-21 18:04           ` Doug Evans
2007-12-27 19:20           ` Vladimir Prus [this message]
2008-01-28 18:17             ` Doug Evans
2008-02-06 19:09               ` Doug Evans
2008-02-06 19:16                 ` Daniel Jacobowitz
2008-02-06 19:25           ` Daniel Jacobowitz

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=200712272136.04574.vladimir@codesourcery.com \
    --to=vladimir@codesourcery.com \
    --cc=dje@google.com \
    --cc=gdb-patches@sources.redhat.com \
    /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