This is the mail archive of the
gdb@sourceware.org
mailing list for the GDB project.
Re: [RFC] Python Finish Breakpoints
Doug Evans <dje@google.com> writes:
> So first let me ask a clarifying question: Is the main purpose for the
> patch to provide robust handling of the different ways an inferior
> function call can "exit"?
> And if so, maybe (or maybe not, dunno) it would be better to focus on
> making that work as desired, as opposed to a general purpose
> finish-frame breakpoint handler.
> The latter may be sufficiently useful as well of course. At this
> point I'd just like to understand the main use-case.
Pretty much just agreeing with what you said, but with a distinction.
Inferior function calls are so transparent in GDB that it can happen
even if we explicitly exclude the case for these breakpoints (IE,
inferior function calls are a special case which would be ignored). As
inferior function calls can happen in watchpoint expressions, or in
conditional breakpoints, the C++ exception example can happen there,
anyway. We can exclude the watchpoint case by disallowing them in the
finish breakpoint. But even so, with the attaching of conditions to a
breakpoint, will the breakpoint 'know' that GDB has done some magic
re-shuffling with the inferior?
Anyway, tests will tell this story better than my word-craft ;) I am
all for this functionality, as long as we don't leave the Python script
confused about 'what just happened'.
Cheers,
Phil