aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite/gdb.python/py-commands-breakpoint.py
AgeCommit message (Collapse)AuthorFilesLines
2025-10-30gdb/testsuite: rename ambiguous variable in py-command-breakpoint.pySimon Marchi1-3/+3
Fix this flake8 warning: gdb/testsuite/gdb.python/py-commands-breakpoint.py:37:13: E741 ambiguous variable name 'l' This one is a bit subjective, but renaming the variable is easy enough and the simplest way to get rid of the warning. Change-Id: I9b1ffd898e27a9d0e172f29715aff3ff3cc785b9 Approved-By: Tom Tromey <tom@tromey.com>
2025-01-04[gdb/testsuite] Add gdb.python/py-commands-breakpoint.expTom de Vries1-0/+59
A recent discussion about what commands are allowed during gdb.Breakpoint.stop, made me wonder if there would be less restrictions if we'd do those commands as part of a breakpoint command list instead. Attribute gdb.Breakpoint.commands is a string with gdb commands, so I tried implementing a new class PyCommandsBreakpoint, derived from gdb.Breakpoint, that supports a py_commands method. My original idea was to forbid setting PyCommandsBreakpoint.commands, and do: ... def py_commands(self): print("VAR: %d" % self.var) self.var += 1 gdb.execute("continue") ... but as it turns out 'gdb.execute("continue")' does not behave the same way as continue. I've filed PR python/32454 about this. So the unsatisfactory solution is to first execute PyCommandsBreakpoint.py_commands: ... def py_commands(self): print("VAR: %d" % self.var) self.var += 1 ... and then: ... self.commands = "continue" ... I was hoping for a better outcome, but having done the work of writing this, I suppose it has use as a test-case, perhaps also as an example of how to work around PR python/32454. Tested on x86_64-linux. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=32454