Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: brobecker@adacore.com, gdb-patches@sourceware.org
Subject: Re: [RFC] canonical linespec and multiple breakpoints ...
Date: Thu, 30 Jun 2011 21:35:00 -0000	[thread overview]
Message-ID: <m3r56bdoh9.fsf@fleche.redhat.com> (raw)
In-Reply-To: <83k4dcd1bh.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 27 May	2011 10:56:02 +0300")

Eli> Maybe a useful interim step would be reworking the description you
Eli> posted into a concise list of broad use case classes and issues that
Eli> need to be solved in each class.  We can then brainstorm possible
Eli> solutions against that list.

Here are the various scenarios in a more CLI-centric way.  I think it is
important to consider how a proposed plan handles each one.  Note that
in many cases the content of the linespec is unimportant, nearly any of
them can be made to be ambiguous; this happens in real programs.

1. Break on an ambiguously-named function.

    $ gdb gdb
    (gdb) break parse_number

  Today we pick one:

    Breakpoint 1 at 0x7e7a54: file ../../src/gdb/p-exp.y, line 856.


2. The same, but with a file:line.


3. Set a breakpoint at a SystemTap probe, the thing that started all this:

    (gdb) break probe:longjmp

   This one (in Fedora 15 glibc) happens to have 2 locations.


4. Set a pending breakpoint.

   (gdb) break lib_function

5. The same, but the pending name is ambiguous.

6. Set a breakpoint that has a match in the inferior.  Then the inferior
   loads a .so to make the linespec ambiguous.

7. 'break main', then start multiple inferiors

8. Any of the above, but with a breakpoint condition.
   Of particular importance is the case where the condition cannot be
   parsed in one location.

9. An ambiguous linespec where one match has debuginfo and another does
   not.


I left off the MI and Python stuff.  I don't think those will have a
significant impact on the choices; the question is really how we want
the user to interact with GDB.

I will post my proposal and rundown of the scenarios separately.

Tom


  reply	other threads:[~2011-06-30 21:35 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-05 16:29 Joel Brobecker
2011-05-05 20:50 ` Tom Tromey
2011-05-05 22:40   ` Joel Brobecker
2011-05-06  3:20     ` Jan Kratochvil
2011-05-06  4:42       ` Joel Brobecker
2011-05-06 18:08         ` Matt Rice
2011-05-06  7:16     ` Eli Zaretskii
2011-05-06 19:18     ` Tom Tromey
2011-05-06  7:10   ` Eli Zaretskii
2011-05-26 21:06     ` Tom Tromey
2011-05-27  7:56       ` Eli Zaretskii
2011-06-30 21:35         ` Tom Tromey [this message]
2011-07-01 18:06           ` Tom Tromey
2011-07-02  6:35             ` Eli Zaretskii
2011-07-05 19:52               ` Tom Tromey
2011-07-05 21:07                 ` Eli Zaretskii
2011-07-05 21:46                   ` Tom Tromey
2011-07-04 19:32             ` Joel Brobecker
2011-07-05  9:20               ` Jerome Guitton
2011-07-05 15:24                 ` Joel Brobecker
2011-07-05 19:53               ` Tom Tromey
2011-07-26 21:06             ` Tom Tromey
2011-07-27 15:10               ` Matt Rice
2011-07-27 16:23               ` Jan Kratochvil
2011-07-28 15:18               ` Matt Rice
2011-08-02 15:33               ` Pedro Alves
2011-08-02 17:09                 ` Tom Tromey
2011-08-02 18:00                   ` Pedro Alves
2011-11-18 19:31                     ` Tom Tromey
2012-02-16 23:31                       ` Tom Tromey
2011-07-02  6:15           ` Eli Zaretskii
2011-07-05 20:00             ` Tom Tromey
2011-05-27 10:50       ` Matt Rice
2011-05-29 13:01       ` Matt Rice
2011-07-05 20:01         ` Tom Tromey
2011-07-06  2:32           ` Matt Rice
2011-09-18 13:47 Avi Gozlan
2011-10-03 16:28 ` Tom Tromey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m3r56bdoh9.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=brobecker@adacore.com \
    --cc=eliz@gnu.org \
    --cc=gdb-patches@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox