1
1
Fork 0
mirror of https://github.com/QB64-Phoenix-Edition/QB64pe.git synced 2024-07-02 03:50:36 +00:00

Reduces parameters in SUB_VWATCH()

Since `vwatch_linenumber` is a shared variable, it doesn't need to be 
passed to `SUB_VWATCH()`.
This commit is contained in:
Fellippe Heitor 2021-07-16 18:51:35 -03:00
parent 88e2a1fa83
commit 78fb2ff1b9
3 changed files with 24 additions and 25 deletions

View file

@ -5278,7 +5278,7 @@ DO
PRINT #12, "exit_subfunc:;" PRINT #12, "exit_subfunc:;"
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN
IF NoChecks = 0 THEN IF NoChecks = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
PRINT #12, "*__LONG_VWATCH_SUBLEVEL=*__LONG_VWATCH_SUBLEVEL- 1 ;" PRINT #12, "*__LONG_VWATCH_SUBLEVEL=*__LONG_VWATCH_SUBLEVEL- 1 ;"
END IF END IF
@ -5556,7 +5556,7 @@ DO
IF stringprocessinghappened THEN e$ = cleanupstringprocessingcall$ + e$ + ")" IF stringprocessinghappened THEN e$ = cleanupstringprocessingcall$ + e$ + ")"
IF (typ AND ISSTRING) THEN a$ = "WHILE ERROR! Cannot accept a STRING type.": GOTO errmes IF (typ AND ISSTRING) THEN a$ = "WHILE ERROR! Cannot accept a STRING type.": GOTO errmes
IF NoChecks = 0 AND vWatchOn = 1 THEN IF NoChecks = 0 AND vWatchOn = 1 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
PRINT #12, "while((" + e$ + ")||new_error){" PRINT #12, "while((" + e$ + ")||new_error){"
ELSE ELSE
@ -5615,13 +5615,13 @@ DO
IF (typ AND ISSTRING) THEN a$ = "DO ERROR! Cannot accept a STRING type.": GOTO errmes IF (typ AND ISSTRING) THEN a$ = "DO ERROR! Cannot accept a STRING type.": GOTO errmes
IF whileuntil = 1 THEN PRINT #12, "while((" + e$ + ")||new_error){" ELSE PRINT #12, "while((!(" + e$ + "))||new_error){" IF whileuntil = 1 THEN PRINT #12, "while((" + e$ + ")||new_error){" ELSE PRINT #12, "while((!(" + e$ + "))||new_error){"
IF NoChecks = 0 AND vWatchOn = 1 THEN IF NoChecks = 0 AND vWatchOn = 1 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
controltype(controllevel) = 4 controltype(controllevel) = 4
ELSE ELSE
controltype(controllevel) = 3 controltype(controllevel) = 3
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 AND NoChecks = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 AND NoChecks = 0 THEN
PRINT #12, "do{*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "do{*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
ELSE ELSE
PRINT #12, "do{" PRINT #12, "do{"
END IF END IF
@ -5655,14 +5655,14 @@ DO
IF (typ AND ISSTRING) THEN a$ = "LOOP ERROR! Cannot accept a STRING type.": GOTO errmes IF (typ AND ISSTRING) THEN a$ = "LOOP ERROR! Cannot accept a STRING type.": GOTO errmes
PRINT #12, "dl_continue_" + str2$(controlid(controllevel)) + ":;" PRINT #12, "dl_continue_" + str2$(controlid(controllevel)) + ":;"
IF NoChecks = 0 AND vWatchOn = 1 THEN IF NoChecks = 0 AND vWatchOn = 1 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
IF whileuntil = 1 THEN PRINT #12, "}while((" + e$ + ")&&(!new_error));" ELSE PRINT #12, "}while((!(" + e$ + "))&&(!new_error));" IF whileuntil = 1 THEN PRINT #12, "}while((" + e$ + ")&&(!new_error));" ELSE PRINT #12, "}while((!(" + e$ + "))&&(!new_error));"
ELSE ELSE
PRINT #12, "dl_continue_" + str2$(controlid(controllevel)) + ":;" PRINT #12, "dl_continue_" + str2$(controlid(controllevel)) + ":;"
IF NoChecks = 0 AND vWatchOn = 1 THEN IF NoChecks = 0 AND vWatchOn = 1 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
IF controltype(controllevel) = 4 THEN IF controltype(controllevel) = 4 THEN
@ -5815,7 +5815,7 @@ DO
IF Error_Happened THEN GOTO errmes IF Error_Happened THEN GOTO errmes
IF NoChecks = 0 AND vWatchOn = 1 THEN IF NoChecks = 0 AND vWatchOn = 1 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
PRINT #12, "fornext_step" + u$ + "=" + e$ + ";" PRINT #12, "fornext_step" + u$ + "=" + e$ + ";"
@ -5902,7 +5902,7 @@ DO
IF NoChecks = 0 THEN IF NoChecks = 0 THEN
PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1 PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
END IF END IF
FOR i = controllevel TO 1 STEP -1 FOR i = controllevel TO 1 STEP -1
@ -5943,7 +5943,7 @@ DO
IF NoChecks = 0 THEN IF NoChecks = 0 THEN
PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1 PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
END IF END IF
@ -6041,7 +6041,7 @@ DO
IF NoChecks = 0 THEN IF NoChecks = 0 THEN
PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1 PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
END IF END IF
@ -6279,7 +6279,7 @@ DO
IF NoChecks = 0 THEN IF NoChecks = 0 THEN
PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1 PRINT #12, "S_" + str2$(statementn) + ":;": dynscope = 1
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
END IF END IF
@ -6467,7 +6467,7 @@ DO
IF NoChecks = 0 THEN IF NoChecks = 0 THEN
IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN
PRINT #12, "do{*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH(__LONG_VWATCH_LINENUMBER,(ptrszint*)vwatch_local_vars);" PRINT #12, "do{*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
ELSE ELSE
PRINT #12, "do{" PRINT #12, "do{"
END IF END IF
@ -8812,7 +8812,7 @@ DO
IF vWatchOn = 1 AND NoChecks = 0 THEN IF vWatchOn = 1 AND NoChecks = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= 0; SUB_VWATCH(__LONG_VWATCH_LINENUMBER);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= 0; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
PRINT #12, "if (sub_gl_called) error(271);" PRINT #12, "if (sub_gl_called) error(271);"
PRINT #12, "close_program=1;" PRINT #12, "close_program=1;"
@ -22585,7 +22585,7 @@ END FUNCTION
SUB xend SUB xend
IF vWatchOn = 1 AND NoChecks = 0 THEN IF vWatchOn = 1 AND NoChecks = 0 THEN
PRINT #12, "*__LONG_VWATCH_LINENUMBER= 0; SUB_VWATCH(__LONG_VWATCH_LINENUMBER);" PRINT #12, "*__LONG_VWATCH_LINENUMBER= 0; SUB_VWATCH((ptrszint*)vwatch_local_vars);"
END IF END IF
PRINT #12, "sub_end();" PRINT #12, "sub_end();"
END SUB END SUB

View file

@ -1,6 +1,6 @@
$CHECKING:OFF $CHECKING:OFF
SUB vwatch (linenumber AS LONG, localVariables AS _OFFSET) SUB vwatch (localVariables AS _OFFSET)
STATIC AS LONG ide, breakpointCount, timeout, startLevel, lastLine STATIC AS LONG ide, breakpointCount, timeout, startLevel, lastLine
STATIC AS _BYTE pauseMode, stepOver, bypass STATIC AS _BYTE pauseMode, stepOver, bypass
STATIC buffer$, endc$ STATIC buffer$, endc$
@ -53,7 +53,7 @@ SUB vwatch (linenumber AS LONG, localVariables AS _OFFSET)
vwatch_breakpoints(CVL(temp$)) = -1 vwatch_breakpoints(CVL(temp$)) = -1
NEXT NEXT
CASE "run" CASE "run"
IF vwatch_breakpoints(linenumber) THEN EXIT DO IF vwatch_breakpoints(vwatch_linenumber) THEN EXIT DO
pauseMode = 0 pauseMode = 0
EXIT SUB EXIT SUB
CASE "break" CASE "break"
@ -63,10 +63,10 @@ SUB vwatch (linenumber AS LONG, localVariables AS _OFFSET)
LOOP LOOP
END IF END IF
IF linenumber = lastLine THEN EXIT SUB IF vwatch_linenumber = lastLine THEN EXIT SUB
lastLine = linenumber lastLine = vwatch_linenumber
IF linenumber = 0 THEN IF vwatch_linenumber = 0 THEN
cmd$ = "quit" cmd$ = "quit"
GOSUB SendCommand GOSUB SendCommand
CLOSE #ide CLOSE #ide
@ -89,21 +89,21 @@ SUB vwatch (linenumber AS LONG, localVariables AS _OFFSET)
REDIM vwatch_breakpoints(UBOUND(vwatch_breakpoints)) AS _BYTE REDIM vwatch_breakpoints(UBOUND(vwatch_breakpoints)) AS _BYTE
END SELECT END SELECT
IF stepOver = -1 AND vwatch_sublevel > startLevel AND vwatch_breakpoints(linenumber) = 0 THEN IF stepOver = -1 AND vwatch_sublevel > startLevel AND vwatch_breakpoints(vwatch_linenumber) = 0 THEN
EXIT SUB EXIT SUB
ELSEIF stepOver = -1 AND vwatch_sublevel = startLevel THEN ELSEIF stepOver = -1 AND vwatch_sublevel = startLevel THEN
stepOver = 0 stepOver = 0
pauseMode = -1 pauseMode = -1
END IF END IF
IF vwatch_breakpoints(linenumber) = 0 AND pauseMode = 0 THEN IF vwatch_breakpoints(vwatch_linenumber) = 0 AND pauseMode = 0 THEN
EXIT SUB EXIT SUB
END IF END IF
vwatch_stoptimers vwatch_stoptimers
cmd$ = "line number:" cmd$ = "line number:"
IF vwatch_breakpoints(linenumber) THEN cmd$ = "breakpoint:" IF vwatch_breakpoints(vwatch_linenumber) THEN cmd$ = "breakpoint:"
cmd$ = cmd$ + MKL$(linenumber) cmd$ = cmd$ + MKL$(vwatch_linenumber)
GOSUB SendCommand GOSUB SendCommand
DO 'main loop DO 'main loop

View file

@ -1,3 +1,2 @@
SUB vwatch (linenumber AS LONG) SUB vwatch ()
linenumber = 0
END SUB END SUB