delve/pkg/terminal
Alessandro Arzilli d97b471292
pkg/proc,service/debugger: do not disable unsatisfiable breakpoints (#3868)
Previously breakpoints with hitcount conditions that became
unsatisfiable
would become disabled, this was done as an optimization so that the
continue loop would no longer need to stop on them and evaluate their
conditions.
As a side effect this meant that on restart these breakpoints would
remain disabled, even though their hit condition returned satisfiable.

This commit changes Delve behavior so that breakpoints with
unsatisifiable hitcount conditions are no longer disabled but the
associated physical breakpoints are removed anyway, preserving the
optimization.

Some refactoring is done to the way conditions are represented and the
enable status is managed so that in the future it will be possible to
use hitcount conditions to implement "chained" breakpoints (also known
as dependet breakpoints), i.e. breakpoints that become active only
after a second breakpoint has been hit.
2024-12-04 19:07:56 -08:00
..
colorize all: replace deprecated io/ioutil with io and os (#3509) 2023-09-25 11:41:59 -07:00
starbind service,terminal,cmd/dlv: automatically guessing substitute-path config (#3781) 2024-10-31 10:19:08 -07:00
command_test.go pkg/proc,service/debugger: do not disable unsatisfiable breakpoints (#3868) 2024-12-04 19:07:56 -08:00
command.go service,terminal,cmd/dlv: automatically guessing substitute-path config (#3781) 2024-10-31 10:19:08 -07:00
config.go service,terminal,cmd/dlv: automatically guessing substitute-path config (#3781) 2024-10-31 10:19:08 -07:00
disasmprint.go terminal: add ability to show disassembly instead of source (#3047) 2022-07-14 14:08:47 -07:00
docgen.go Documentation: fix autogenerated markdown documentation (#3836) 2024-10-21 09:15:44 -07:00
groups.go terminal: divide commands into categories 2020-03-09 10:11:21 -07:00
out_unix.go all: remove obsolete build tags "// +build" (#3513) 2023-10-03 08:50:11 -07:00
out_windows.go terminal: use exact window size for pager (#3249) 2023-01-16 09:20:43 -08:00
out.go terminal: use exact window size for pager (#3249) 2023-01-16 09:20:43 -08:00
starlark_test.go terminal/starbind: fix starlark conversion of named consts (#3802) 2024-09-03 10:36:42 -07:00
starlark.go *: Fix go vet complaints (#1935) 2020-03-18 09:25:32 -07:00
terminal_other.go all: remove obsolete build tags "// +build" (#3513) 2023-10-03 08:50:11 -07:00
terminal_test.go *: misc improvements to config command and substitute-path rules (#3335) 2023-05-02 12:23:59 -07:00
terminal_windows.go Move top-level packages into pkg 2017-02-08 12:17:19 -08:00
terminal.go *: replace fmt.Errorf with errors.New (#3752) 2024-06-20 21:50:18 +02:00