This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH] Re: bug in mi when setting breakpoint
> > In Emacs, multiple breakpoints are only created when the user specifies
> > the overloaded function in the GUD buffer (if he clicks on the fringe in
> > an overloaded function in the source buffer he only gets one breakpoint at
> > the line on which he clicked).
> >
> > If GDB sets all these breakpoints, unwanted ones could then be deleted
> > manually either by typing "delete BKPTNO" in the GUD buffer, or clicking
> > on individual breakpoint icons in the fringe of the source buffers.
>
> I don't think such solution is entirely satisfactory, for the following
> reason:
>
> 1. UI should not require to type GDB command for such basic task as adding
> breakpoints.
The GUD buffer is generally additional to the graphical like features: for
those who like to use the command line and for more obscure features which have
no graphical counterpart. Also, of course, for environments that only support
tarminal based applications.
> 2. Overloaded functions can be scattered over several source file, so
> clicking on fringe is highly inconvenient -- the files might not be even
> open.
For such cases there is also a breakpoints buffer from which all breakpoints
can be controlled.
> 3. Assuming we have a list of breakpoints (which Eclipse and KDevelop
> do), we surely can delete breakpoints there. However, adding unwanted
> breakpoints right away will not be good in non-stop mode:
>
> - Some threads might already stop on unwanted breakpoints before you
> delete them
> - You might run out of hardware resources while setting unwanted
> breakpoints
Running GDB in "non-stop mode" sounds highly ambitious and may happen a long
time in the future, if at all. I'm talking about implementing a simple
solution, for now. Even if non-stop mode does become a reality, it presumably
won't be the default behaviour, so it won't break existing front ends.
> I think it's more clear to set only those breakpoints that user want to set,
> as opposed to setting all of them, and then removing undesired ones.
Yes, but I still haven't see how you propose to do this.
--
Nick http://www.inet.net.nz/~nickrob