This is the mail archive of the gdb-patches@sourceware.org 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]

[PATCH v4 0/9] Locations API


This is the next revision of the locations/explicit locations mega-API
change on which I've been working. Most of the changes in this
revision are fairly trivial.

As a reminder, this series proposes to change the API for create_breakpoint
and related functions to:

void
my_command (char *arg, int from_tty)
{
  struct event_location *location;
  struct cleanup *cleanup;

  location = string_to_event_location (&arg, current_language);
  cleanup = make_cleanup_delete_event_location (location);
  if (*arg)
    error ("junk at end of command");
  /* do whatever with location, e.g., create_breakpoint (location, ...);  */
  do_cleanups (cleanup);
}

As with the previous revision, explicit-ui-cli tests will cause several
internal-errors because of gdb/17960 (internal-error when completing
"source.c:func").

This is easily fixed after that patch has been committed. This series
sent as-is does /not/ depend on those patches being applied.

---

Keith Seitz (9):
      Explicit locations: rename "address string"/"addr_string" to "location"
      Explicit locations: introduce new struct event_location-based API
      Explicit locations: use new location API
      Explicit locations: introduce address locations
      Explicit locations: introduce probe locations
      Explicit locations: introduce explicit locations
      Explicit locations: add UI features for CLI
      Explicit locations: MI support for explicit locations
      Explicit locations: documentation updates


 gdb/Makefile.in                           |    6 
 gdb/NEWS                                  |    4 
 gdb/ax-gdb.c                              |    8 
 gdb/break-catch-throw.c                   |   23 +
 gdb/breakpoint.c                          |  747 +++++++++++++++++------------
 gdb/breakpoint.h                          |   51 +-
 gdb/cli/cli-cmds.c                        |   47 ++
 gdb/completer.c                           |  219 ++++++++-
 gdb/doc/gdb.texinfo                       |  234 ++++++---
 gdb/elfread.c                             |    4 
 gdb/guile/scm-breakpoint.c                |   23 +
 gdb/linespec.c                            |  589 ++++++++++++++---------
 gdb/linespec.h                            |   42 +-
 gdb/location.c                            |  734 ++++++++++++++++++++++++++++
 gdb/location.h                            |  238 +++++++++
 gdb/mi/mi-cmd-break.c                     |   76 +++
 gdb/probe.c                               |   20 +
 gdb/probe.h                               |    6 
 gdb/python/py-breakpoint.c                |   12 
 gdb/python/py-finishbreakpoint.c          |   16 -
 gdb/python/python.c                       |   26 +
 gdb/remote.c                              |   10 
 gdb/spu-tdep.c                            |   11 
 gdb/testsuite/gdb.base/help.exp           |    2 
 gdb/testsuite/gdb.linespec/3explicit.c    |   28 +
 gdb/testsuite/gdb.linespec/cpexplicit.cc  |   63 ++
 gdb/testsuite/gdb.linespec/cpexplicit.exp |  112 ++++
 gdb/testsuite/gdb.linespec/explicit.c     |   56 ++
 gdb/testsuite/gdb.linespec/explicit.exp   |  393 +++++++++++++++
 gdb/testsuite/gdb.linespec/explicit2.c    |   24 +
 gdb/testsuite/gdb.linespec/ls-errs.exp    |   45 +-
 gdb/testsuite/gdb.mi/mi-break.exp         |   82 +++
 gdb/testsuite/gdb.mi/mi-dprintf.exp       |   12 
 gdb/testsuite/lib/mi-support.exp          |   16 +
 gdb/tracepoint.c                          |   16 +
 gdb/tracepoint.h                          |    2 
 36 files changed, 3230 insertions(+), 767 deletions(-)
 create mode 100644 gdb/location.c
 create mode 100644 gdb/location.h
 create mode 100644 gdb/testsuite/gdb.linespec/3explicit.c
 create mode 100644 gdb/testsuite/gdb.linespec/cpexplicit.cc
 create mode 100644 gdb/testsuite/gdb.linespec/cpexplicit.exp
 create mode 100644 gdb/testsuite/gdb.linespec/explicit.c
 create mode 100644 gdb/testsuite/gdb.linespec/explicit.exp
 create mode 100644 gdb/testsuite/gdb.linespec/explicit2.c


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