Line numbers now physical in setbpt ?
François Vogel
fvogelnew1 at free.fr
Sun Jan 11 17:50:56 CET 2009
Hi,
I'm slowly realizing that apparently in Scilab 5 all line numbers are
now physical line numbers while they were logical line numbers up to
Scilab 4.1.2.
I think it's now clear from bug 3407 that line numbers reported in
error messages and in lasterror() are now physical (were logical in
Scilab 4.x).
What I'm now realizing is that also what is managed by setbpt/delbpt
must now be physical and no more logical.
Could Serge please confirm this statement?
Example (run it in Scilab 4.1.2 and in Scilab recent master to compare):
function pllines
disp("line 2 2"); // logical physical
disp("line 3 3")
disp("line 4 4")
disp("line 5 5")
disp..
("line 6 7")
disp("line 7 8")
disp("line 8 9")
disp("line 9 10")
endfunction
setbpt("pllines",6)
pllines
Scilab 4.1.2 ends with:
line 6 7
Stop after row 6 in function pllines :
-1->
I.e. Scilab 4.1.2 executed the full continued logical line 6 before
stopping.
Compare with the output in Scilab 5:
line 5 5
Stop after row 6 in function pllines.
Type 'resume' or 'abort' to return to standard level prompt.
-1->
Here we can see that it does NOT executed logical line 6 completely,
thus stopping in the middle of it. However, it nevertheless states
that it stopped after execution of line 6.
Further observation: add setbpt("pllines",10) and you'll see it stops
in Scilab 5, meaning line 10 is still in function pllines. In Scilab
4.1.2 it doesn't stop because line 10 is after the end of the function
pllines definition.
Thanks for clarifying this. If setbpt/delbpt are now really supposed
to deal with physical line numbers, then I'll have to make changes in
the Scipad debugger for Scilab 5.
Francois
More information about the dev
mailing list