[0/6] Don't throw quit while handling inferior events

Message ID 20230210233604.2228450-1-pedro@palves.net
Headers
Series Don't throw quit while handling inferior events |

Message

Pedro Alves Feb. 10, 2023, 11:35 p.m. UTC
  This series implements what I suggested here:

  https://inbox.sourceware.org/gdb-patches/ab97c553-f406-b094-cdf3-ba031fdea925@palves.net/

... and then some more.

To expose the problem with a testcase, I added a new $_shell
convenience function, and I'm using that to send a SIGINT signal to
GDB from a breakpoint condition.

While writing tests for the new $_shell convenience function, I ran
into a number of bugs, also fixed in the series.

Pedro Alves (6):
  Fix "ptype INTERNAL_FUNC" (PR gdb/30105)
  Make "ptype INTERNAL_FUNCTION" in Ada print like other languages
  Add new "$_shell(CMD)" internal function
  Don't throw quit while handling inferior events
  GC get_active_ext_lang
  Don't throw quit while handling inferior events, part II

 gdb/NEWS                                      | 10 ++
 gdb/ada-typeprint.c                           |  7 ++
 gdb/c-typeprint.c                             | 51 ----------
 gdb/cli/cli-cmds.c                            | 89 ++++++++++++++++-
 gdb/doc/gdb.texinfo                           | 47 +++++++++
 gdb/extension-priv.h                          |  2 -
 gdb/extension.c                               | 70 +++++++++++--
 gdb/extension.h                               | 16 +++
 gdb/infrun.c                                  | 54 ++++++++++
 gdb/p-typeprint.c                             | 46 ---------
 .../gdb.base/bg-exec-sigint-bp-cond.c         | 35 +++++++
 .../gdb.base/bg-exec-sigint-bp-cond.exp       | 98 +++++++++++++++++++
 gdb/testsuite/gdb.base/default.exp            |  1 +
 .../gdb.base/internal-functions-ptype.exp     | 40 ++++++++
 gdb/testsuite/gdb.base/shell.exp              | 36 +++++++
 gdb/testsuite/gdb.python/py-xmethods.exp      |  8 ++
 16 files changed, 498 insertions(+), 112 deletions(-)
 create mode 100644 gdb/testsuite/gdb.base/bg-exec-sigint-bp-cond.c
 create mode 100644 gdb/testsuite/gdb.base/bg-exec-sigint-bp-cond.exp
 create mode 100644 gdb/testsuite/gdb.base/internal-functions-ptype.exp


base-commit: 5036bde964bc1a18282dde536a95aecd0d2c08fb