This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]