Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for symbolic watchpoints #39

Open
travitch opened this issue Jun 11, 2020 · 0 comments
Open

Add support for symbolic watchpoints #39

travitch opened this issue Jun 11, 2020 · 0 comments
Labels
enhancement New feature or request
Milestone

Comments

@travitch
Copy link
Contributor

Following #38, which involves unconditional breakpoints, it would be really nice to have /conditional watchpoints/ that trigger when a condition is true. Unlike a normal debugger, we have some options.

  • We clearly wouldn't want them to trigger if the condition is concretely false
  • We almost certainly want them to trigger if the condition is concretely true
  • We may want them to trigger when the condition may be true - especially if we can provide a term explaining the conditions under which it might trigger.

As far as UI, this would be much like the breakpoint functionality. Supporting source-level watches would be simple (tied to a source location). Supporting adding located watches from the TUI would involve some more effort:

  • We need a method for specifying the condition under which the watch should trigger. There could be a UI for assembling simple predicates, but that isn't very satisfying. Specifying them via a programming language (or perhaps JSON?) would be really nice.
  • The performance characteristics are interesting - aside from the concretely true and false cases, determining whether or not the watchpoint should trigger requires a solver invocation, which can be expensive. Communicating that to users would be an interesting challenge.
@travitch travitch added the enhancement New feature or request label Jun 11, 2020
@travitch travitch added this to the Demo 2 milestone Jun 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant