]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit
Fix DAP launch and configurationDone requests
authorTom Tromey <tromey@adacore.com>
Thu, 18 Jan 2024 14:35:48 +0000 (07:35 -0700)
committerTom Tromey <tromey@adacore.com>
Mon, 12 Feb 2024 17:43:17 +0000 (10:43 -0700)
commit25558d2fc0e8b77d4c522c322012b048db4c1485
tree7f4321b8f28ea77cae202a53d69c360af5824355
parent95fc420a40ebcbd510b41df77b93b11ec819f0a1
Fix DAP launch and configurationDone requests

Co-workers at AdaCore pointed out that gdb incorrectly implements the
DAP launch and configurationDone requests.  It's somewhat strange to
me, but the spec does in fact say that configuration requests should
occur before the executable is known to gdb.  This was clarified in
this bug report against the spec:

    https://github.com/microsoft/debug-adapter-protocol/issues/452

Fixing 'launch' to start the inferior was straightforward, but this
then required some changes to how breakpoints are handled.  In
particular, now gdb will emit the "pending" reason on a breakpoint,
and will suppress breakpoint events during breakpoint setting.
30 files changed:
gdb/python/lib/gdb/dap/breakpoint.py
gdb/python/lib/gdb/dap/launch.py
gdb/testsuite/gdb.dap/ada-arrays.exp
gdb/testsuite/gdb.dap/ada-nested.exp
gdb/testsuite/gdb.dap/ada-scopes.exp
gdb/testsuite/gdb.dap/args-env.exp
gdb/testsuite/gdb.dap/assign.exp
gdb/testsuite/gdb.dap/basic-dap.exp
gdb/testsuite/gdb.dap/bt-nodebug.exp
gdb/testsuite/gdb.dap/catch-exception.exp
gdb/testsuite/gdb.dap/children.exp
gdb/testsuite/gdb.dap/cond-bp.exp
gdb/testsuite/gdb.dap/cwd.exp
gdb/testsuite/gdb.dap/cxx-exception.exp
gdb/testsuite/gdb.dap/eof.exp
gdb/testsuite/gdb.dap/frameless.exp
gdb/testsuite/gdb.dap/hover.exp
gdb/testsuite/gdb.dap/lazy-string.exp
gdb/testsuite/gdb.dap/log-message.exp
gdb/testsuite/gdb.dap/memory.exp
gdb/testsuite/gdb.dap/modules.exp
gdb/testsuite/gdb.dap/pause.exp
gdb/testsuite/gdb.dap/ptrref.exp
gdb/testsuite/gdb.dap/rust-slices.exp
gdb/testsuite/gdb.dap/scopes.exp
gdb/testsuite/gdb.dap/sources.exp
gdb/testsuite/gdb.dap/stack-format.exp
gdb/testsuite/gdb.dap/stop-at-main.exp
gdb/testsuite/gdb.dap/terminate.exp
gdb/testsuite/lib/dap-support.exp