[Gambas-bugtracker] Bug #2229: Data Breakpoiint not initializing stored expression value on Start Run

bugtracker at gambaswiki.org bugtracker at gambaswiki.org
Fri Jun 4 05:06:29 CEST 2021


Comment #6 by John ANDERSON:

I think the normal definition of debugger Data Breakpoint is:  "Break Execution" when watched expression changes any time -after- expression is first initialized (i.e. Public X as New Integer = 0, etc. - the initialized value is the initial data breakpoint reference value for the session) and then a break will occur at any point a changed is detected in the monitored expression thereafter -during- the run session.

This way when a program starts you will get predictable break behavior from the Data Breakpoint -every- time.  Run1 will work same way as Run25.

NOW - What if user pauses and manually changes value of monitored expression "x"?:

A) If a user pauses execution, changes as watched expression "x" for some reason, and then restarts - well the system will probably immediate break right after user restarts (because data breakpoint detected a change in x ) and then user has to start execution a second time to continue the run session.


B)  on some systems it is assumed that if you pause to manually change a data breakpoint "x" expression and restart - it will restart without that second Data Breakpoint pause, because it assumes you know what you are doing.

Either A or B would work OK here.  Many debuggers for CPU code work like case A, and IDE / debugger stuff like VB / Eclipse C gdb setups will work like case B.  I've seen it either way.

More information about the Bugtracker mailing list