Bdebugger and breakpoint

#1
One more problem.

From docs:
If the batch debugger is active, BREAKPOINT sets a breakpoint on the current line, stopping a "Step Out" sequence.
and the code (xyz.btm)
Code:
@echo off
GoSub something
cancel

:something
  echo Entering somewhere
  breakpoint
  echo Exiting somewhere
  return
Run to breakpoint:
F5, Shift F11.
Breakpoint was not fired. Debugger marked line with breakpoint as "disabled" (white circle, red perimeter).

Step into:
F5, F11 many times. Debugger marked line with breakpoint as "disabled" just entering that line. Why disabled?

Step over (as documented)
F5, F10, F10
Breakpoint was not fired. Debugger didn't marked line with breakpoint.

In all cases output is the same:
Code:
Entering somewhere
Exiting somewhere
Breakpoint was not fired.

-------------------------
Let's mark breakpoints with mouse. Click on left margin of lines: "Breakpoint" and the next one. Breakpoints are marked with red dots.

F5, F10, F10 - breakpoints was not fired :(

F5, Shift F11, Shift F11, Shift F11: strange. The first breakpoint was marked as disabled, second one - no change, both breakpoints (disabled and active) are stopping execution of "Run to breakpoint"

Happy new year
 

rconn

Administrator
Staff member
May 14, 2008
10,504
94
#2
Fixed in build 71.

Note that BREAKPOINT has been obsolete for several years; what broke it was when I added breakpoint conditions (right clicking on the breakpoint column & defining a condition). Apparently you're the only one still using BREAKPOINT? (BREAKPOINT is a holdover from the old 4DOS debugger; it's unnecessary in newer versions because the breakpoints are saved when you edit / debug files.)

Also, there is no such thing as a breakpoint when single-stepping through code, so I'm unsure what you're expecting in that case.
 
#3
Fixed in build 71.
Thanks for the fix.

Note that BREAKPOINT has been obsolete for several years.
If breakpoint has been obsolete - please add the notice in the docs. It changes point of view :)

there is no such thing as a breakpoint when single-stepping through code, so I'm unsure what you're expecting in that case.
I expect: if stepping using F10 (step over), if there is an active breakpoint somewhere inside the statement (inside GoSub, Do etc. ) I'm stepping over it should break.
But: it doesn't matter if obsolete.
 

ron

Aug 19, 2008
146
0
#4
I think I'm having a similar issue. Not using "breakpoint", but having a breakpoint I set inside a gosub fire. The code is being executed but the breakpoint does not fire.

Maybe it's because the breakpoint is inside a 'for' ?

for %x in (""%1"") gosub age