mirror of
https://github.com/QB64Official/qb64.git
synced 2024-07-05 03:00:25 +00:00
Hopefully fixes the mysterious missing vwatchlabel bug.
This commit is contained in:
parent
3aff84bba8
commit
8d479ee8ea
|
@ -784,7 +784,7 @@ DIM SHARED currentid AS LONG 'is the index of the last ID accessed
|
||||||
DIM SHARED linenumber AS LONG, reallinenumber AS LONG, totallinenumber AS LONG, definingtypeerror AS LONG
|
DIM SHARED linenumber AS LONG, reallinenumber AS LONG, totallinenumber AS LONG, definingtypeerror AS LONG
|
||||||
DIM SHARED wholeline AS STRING
|
DIM SHARED wholeline AS STRING
|
||||||
DIM SHARED firstLineNumberLabelvWatch AS LONG, lastLineNumberLabelvWatch AS LONG
|
DIM SHARED firstLineNumberLabelvWatch AS LONG, lastLineNumberLabelvWatch AS LONG
|
||||||
DIM SHARED vWatchUsedLabels AS STRING
|
DIM SHARED vWatchUsedLabels AS STRING, vWatchUsedSkipLabels AS STRING
|
||||||
DIM SHARED linefragment AS STRING
|
DIM SHARED linefragment AS STRING
|
||||||
'COMMON SHARED bitmask() AS _INTEGER64
|
'COMMON SHARED bitmask() AS _INTEGER64
|
||||||
'COMMON SHARED bitmaskinv() AS _INTEGER64
|
'COMMON SHARED bitmaskinv() AS _INTEGER64
|
||||||
|
@ -1466,6 +1466,7 @@ emptySCWarning = 0
|
||||||
warningListItems = 0
|
warningListItems = 0
|
||||||
lastWarningHeader = ""
|
lastWarningHeader = ""
|
||||||
vWatchUsedLabels = SPACE$(1000)
|
vWatchUsedLabels = SPACE$(1000)
|
||||||
|
vWatchUsedSkipLabels = SPACE$(1000)
|
||||||
firstLineNumberLabelvWatch = 0
|
firstLineNumberLabelvWatch = 0
|
||||||
REDIM SHARED warning$(1000)
|
REDIM SHARED warning$(1000)
|
||||||
REDIM SHARED warningLines(1000) AS LONG
|
REDIM SHARED warningLines(1000) AS LONG
|
||||||
|
@ -5316,6 +5317,7 @@ DO
|
||||||
FOR i = firstLineNumberLabelvWatch TO lastLineNumberLabelvWatch
|
FOR i = firstLineNumberLabelvWatch TO lastLineNumberLabelvWatch
|
||||||
WHILE i > LEN(vWatchUsedLabels)
|
WHILE i > LEN(vWatchUsedLabels)
|
||||||
vWatchUsedLabels = vWatchUsedLabels + SPACE$(1000)
|
vWatchUsedLabels = vWatchUsedLabels + SPACE$(1000)
|
||||||
|
vWatchUsedSkipLabels = vWatchUsedSkipLabels + SPACE$(1000)
|
||||||
WEND
|
WEND
|
||||||
IF ASC(vWatchUsedLabels, i) = 1 THEN
|
IF ASC(vWatchUsedLabels, i) = 1 THEN
|
||||||
PRINT #12, " case " + str2$(i) + ":"
|
PRINT #12, " case " + str2$(i) + ":"
|
||||||
|
@ -5331,7 +5333,7 @@ DO
|
||||||
PRINT #12, "VWATCH_SKIPLINE:;"
|
PRINT #12, "VWATCH_SKIPLINE:;"
|
||||||
PRINT #12, "switch (*__LONG_VWATCH_GOTO) {"
|
PRINT #12, "switch (*__LONG_VWATCH_GOTO) {"
|
||||||
FOR i = firstLineNumberLabelvWatch TO lastLineNumberLabelvWatch
|
FOR i = firstLineNumberLabelvWatch TO lastLineNumberLabelvWatch
|
||||||
IF ASC(vWatchUsedLabels, i) = 1 THEN
|
IF ASC(vWatchUsedSkipLabels, i) = 1 THEN
|
||||||
PRINT #12, " case -" + str2$(i) + ":"
|
PRINT #12, " case -" + str2$(i) + ":"
|
||||||
PRINT #12, " goto VWATCH_SKIPLABEL_" + str2$(i) + ";"
|
PRINT #12, " goto VWATCH_SKIPLABEL_" + str2$(i) + ";"
|
||||||
PRINT #12, " break;"
|
PRINT #12, " break;"
|
||||||
|
@ -14307,12 +14309,14 @@ SUB vWatchAddLabel (this AS LONG, lastLine AS _BYTE)
|
||||||
IF lastLine = 0 THEN
|
IF lastLine = 0 THEN
|
||||||
WHILE this > LEN(vWatchUsedLabels)
|
WHILE this > LEN(vWatchUsedLabels)
|
||||||
vWatchUsedLabels = vWatchUsedLabels + SPACE$(1000)
|
vWatchUsedLabels = vWatchUsedLabels + SPACE$(1000)
|
||||||
|
vWatchUsedSkipLabels = vWatchUsedSkipLabels + SPACE$(1000)
|
||||||
WEND
|
WEND
|
||||||
|
|
||||||
IF firstLineNumberLabelvWatch = 0 THEN
|
IF firstLineNumberLabelvWatch = 0 THEN
|
||||||
firstLineNumberLabelvWatch = this
|
firstLineNumberLabelvWatch = this
|
||||||
ELSE
|
ELSE
|
||||||
IF prevSkip <> prevLabel THEN
|
IF prevSkip <> prevLabel THEN
|
||||||
|
ASC(vWatchUsedSkipLabels, prevLabel) = 1
|
||||||
PRINT #12, "VWATCH_SKIPLABEL_" + str2$(prevLabel) + ":;"
|
PRINT #12, "VWATCH_SKIPLABEL_" + str2$(prevLabel) + ":;"
|
||||||
prevSkip = prevLabel
|
prevSkip = prevLabel
|
||||||
END IF
|
END IF
|
||||||
|
@ -14326,6 +14330,7 @@ SUB vWatchAddLabel (this AS LONG, lastLine AS _BYTE)
|
||||||
END IF
|
END IF
|
||||||
ELSE
|
ELSE
|
||||||
IF prevSkip <> prevLabel THEN
|
IF prevSkip <> prevLabel THEN
|
||||||
|
ASC(vWatchUsedSkipLabels, prevLabel) = 1
|
||||||
PRINT #12, "VWATCH_SKIPLABEL_" + str2$(prevLabel) + ":;"
|
PRINT #12, "VWATCH_SKIPLABEL_" + str2$(prevLabel) + ":;"
|
||||||
prevSkip = prevLabel
|
prevSkip = prevLabel
|
||||||
END IF
|
END IF
|
||||||
|
@ -14355,7 +14360,7 @@ SUB closemain
|
||||||
PRINT #12, "VWATCH_SKIPLINE:;"
|
PRINT #12, "VWATCH_SKIPLINE:;"
|
||||||
PRINT #12, "switch (*__LONG_VWATCH_GOTO) {"
|
PRINT #12, "switch (*__LONG_VWATCH_GOTO) {"
|
||||||
FOR i = firstLineNumberLabelvWatch TO lastLineNumberLabelvWatch
|
FOR i = firstLineNumberLabelvWatch TO lastLineNumberLabelvWatch
|
||||||
IF ASC(vWatchUsedLabels, i) = 1 THEN
|
IF ASC(vWatchUsedSkipLabels, i) = 1 THEN
|
||||||
PRINT #12, " case -" + str2$(i) + ":"
|
PRINT #12, " case -" + str2$(i) + ":"
|
||||||
PRINT #12, " goto VWATCH_SKIPLABEL_" + str2$(i) + ";"
|
PRINT #12, " goto VWATCH_SKIPLABEL_" + str2$(i) + ";"
|
||||||
PRINT #12, " break;"
|
PRINT #12, " break;"
|
||||||
|
|
Loading…
Reference in a new issue