From: Tom Tromey Date: Thu, 21 Nov 2024 19:32:53 +0000 (-0700) Subject: Reimplement DAP's stopAtBeginningOfMainSubprogram X-Git-Tag: gdb-16-branchpoint~155 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d50cf1cea853395da5fcd13c0d116a7332edff26;p=thirdparty%2Fbinutils-gdb.git Reimplement DAP's stopAtBeginningOfMainSubprogram Right now, stopAtBeginningOfMainSubprogram is implemented "by hand", but then later the launch function uses "starti" to implement stopOnEntry. This patch unifies this code and rewrites it to use "start" when appropriate. Reviewed-by: Kévin Le Gouguec --- diff --git a/gdb/python/lib/gdb/dap/launch.py b/gdb/python/lib/gdb/dap/launch.py index 65444bf976a..6444c8b7b67 100644 --- a/gdb/python/lib/gdb/dap/launch.py +++ b/gdb/python/lib/gdb/dap/launch.py @@ -53,17 +53,19 @@ def launch( if program is not None: file_command(program) inf = gdb.selected_inferior() - if stopAtBeginningOfMainSubprogram: - main = inf.main_name - if main is not None: - exec_and_log("tbreak " + main) inf.arguments = args if env is not None: inf.clear_env() for name, value in env.items(): inf.set_env(name, value) expect_process("process") - exec_and_expect_stop("starti" if stopOnEntry else "run") + if stopAtBeginningOfMainSubprogram: + cmd = "start" + elif stopOnEntry: + cmd = "starti" + else: + cmd = "run" + exec_and_expect_stop(cmd) @request("attach")