This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
Re: How to setup a breakpoint on constructor
- From: mec dot gnu at mindspring dot com (Michael Elizabeth Chastain)
- To: drow at false dot org, eliz at gnu dot org
- Cc: gdb at sources dot redhat dot com, mec dot gnu at mindspring dot com, rolandz at poczta dot fm
- Date: Sat, 17 Jul 2004 16:52:25 -0400 (EDT)
- Subject: Re: How to setup a breakpoint on constructor
> Coincidentally that's what the entire discussion of 1:N breakpoints
> last year was about but no one has had time to implement it.
Right.
1:N breakpoints are better than A::A$base(), but it's been 3 years since
the ctor-breakpoint issue came up, and we don't have anything at all
yet.
> The reason this is hard is that breakpoints by line number inside the
> constructor will still get randomly set on one copy. Many IDEs will set
> breakpoints in this fashion.
With A::A$base(), the breakpoints will always get set in the complete
object constructor, because that is the only function named A::A().
People will still get only one breakpoint, but it's deterministic, not
random.
But if someone breaks in A::A$base() and then says 'break 1000' to get
into the middle of the function (which I do a lot), then they would get
the breakpoint in the wrong copy! So even if we disambiguate the
names, the 1:N nature of multiple ctors shines through.
I wish we could persuade gcc to generate a unified ctor.
Michael C