I cannot explain it. I've been noticing and exploring this bug for a year now, and I have not made any sense of it. It is a minute bug, and rather variable, perhaps a malfunction in the way SB code is compiled?
Here's my dilemma at the moment:
FOR(I)=(0)TO(28) IF(I>LEN(T$)-1)THEN FOR(II)=(I)TO(28) LOCATE(0),(II):?" "*40; NEXT(II) BREAK ENDIF REM Other code not worth mentioning NEXT(I)Basically, in this code, the loop needs to break to prevent subscript-out-of-range errors in the array T$, and it does break, preventing errors as expected, but it does not execute the code before the BREAK command. It completely ignores it. You can put STOP in the FOR loop and it will not stop, the loop and everything in it is completely ignored. It is all tied in with LOCATE somehow, I've had many strange bugs with this command. Another bug I've had was with the INC command; it would not execute, and I was forced to replace it with the X=X+1 format. Most my programs are text based, I've been working with it for years now. These small, few, minute, and random bugs are rather persistent. I have no idea how to even begin to test for these bugs.