This is the mail archive of the gdb-patches@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: RFA: Breakpoint infrastructure cleanups [0/8]


Daniel Jacobowitz wrote:
On Tue, Oct 14, 2003 at 11:40:13AM -0400, Andrew Cagney wrote:

Does anyone have any other comments on these eight submitted patches?

Ask michael.


That's what I was doing :)

I've been following, didn't really have anything to add.


user/impl:
user/mach:
logical/physical
virtual/actual
abstract/actual
[...]
That's +joel and +carlton.  I'm not sure whether Michael was
objecting, but rereading his message it seems plausible - Michael?

Argh, I hate these questions. ;-) The HPDF forum used to get bogged down endlessly in this level of detail.

I don't think any of those pairs would convey at first glance
what the distinction is, to an average user (I hesitated to
say "naive").  With your or my knowledge of debugger internals,
we might look at almost any of those and figure out what they
mean, but ask someone who doesn't know what a register is...

If this is just an internals issue, then toss a coin, it
doesn't matter.  But for the picture that we present to the
user, remember -- we always present a fictional picture that
hides most of the underlying details.  The unsophisticated
user thinks he is debugging his code -- not the underlying
machine.  If possible, he doesn't want to know eg. that
line seventeen has been broken into several locations and
intermixed with code from 3 other lines.  We're sometimes
forced to tell him anyway, but we don't if we can avoid it.

From that perspective, I think a breakpoint is a breakpoint.
To the user it represents a location in the *source* code.
The fact that this may translate to several locations in
the machine code is "under the hood", so to speak.  If he
wants that level of information, we should give it to him,
but maybe the metaphor should reflect the fact that this is
"what's inside the box", as opposed to, like, two different
kinds of breakpoint (virtual/actual or whatever).  So for
instance, we might say that *this* is the breakpoint, and
if you want to know, *these* are the breakpoint's *locations*.

There -- you asked for my opinion. Are you happy? ;-)





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