From 4d1787395250866433fb6412acee6d825d845e31 Mon Sep 17 00:00:00 2001 From: FellippeHeitor Date: Mon, 19 Jul 2021 23:13:00 -0300 Subject: [PATCH] Allows END IF and END SELECT to be steppable. --- source/qb64.bas | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/source/qb64.bas b/source/qb64.bas index 455010358..60345abb3 100644 --- a/source/qb64.bas +++ b/source/qb64.bas @@ -6043,6 +6043,10 @@ DO IF LEN(layout$) = 0 THEN layout$ = l$ ELSE layout$ = layout$ + sp + l$ END IF + IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN + PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);" + END IF + PRINT #12, "}" FOR i = 1 TO controlvalue(controllevel) PRINT #12, "}" @@ -6180,9 +6184,14 @@ DO controllevel = controllevel - 1 IF EveryCaseSet(SelectCaseCounter) THEN PRINT #12, "} /* End of SELECT EVERYCASE ELSE */" END IF + PRINT #12, "sc_" + str2$(controlid(controllevel)) + "_end:;" IF controltype(controllevel) < 10 OR controltype(controllevel) > 17 THEN a$ = "END SELECT without SELECT CASE": GOTO errmes + IF vWatchOn = 1 AND inclinenumber(inclevel) = 0 THEN + PRINT #12, "*__LONG_VWATCH_LINENUMBER= " + str2$(linenumber) + "; SUB_VWATCH((ptrszint*)vwatch_local_vars);" + END IF + IF SelectCaseCounter > 0 AND SelectCaseHasCaseBlock(SelectCaseCounter) = 0 THEN 'warn user of empty SELECT CASE block IF NOT IgnoreWarnings THEN