FellippeHeitor
5c9cc96ca7
Prevent crash when using CLEAR
with var-len string UDTs
...
Still doesn't fix it, but prevents the crash.
Variables won't be cleared with this temporary patch.
2021-09-26 21:06:44 -03:00
FellippeHeitor
64306e4e10
Remove unnecessary REDIM
in SUB increaseUDTArrays
...
A properly formed Git commit subject line should always be able to
complete the following sentence:
- If applied, this commit will...
Do not end the subject line with a period.
Wrap the body at 72 characters.
One day people learn.
Apologies for years of not following the above.
2021-09-25 23:34:59 -03:00
FellippeHeitor
2e32de2615
Dynamically resizes internal UDT arrays. Closes #180 .
2021-09-25 22:27:14 -03:00
FellippeHeitor
edb4d40ffa
Fixes var=function assignment without parameters (recursion).
...
As reported at https://www.qb64.org/forum/index.php?topic=704.msg5775#msg5775
2021-09-25 00:34:55 -03:00
FellippeHeitor
dd302b0b5f
Sends focus to debuggee when function INPUT$()
is called.
2021-09-21 01:28:50 -03:00
FellippeHeitor
3e498df414
Fixes watching/sending values for _BIT arrays.
2021-09-20 22:04:24 -03:00
FellippeHeitor
e30f7a1691
Fix CONST failing with anything containing a NOT
2021-09-19 21:22:08 -03:00
FellippeHeitor
42208832f5
Fixes evaluation of valid var/flag names for $LET/$IF
2021-09-19 15:25:39 -03:00
FellippeHeitor
34138cead6
Fixes parsing in TYPE blocks (new AS syntax)
2021-09-19 14:56:16 -03:00
Fellippe Heitor
1788a77379
Merge pull request #190 from QB64Team/debug-mode [ci-skip]
...
Debug mode tweaks
2021-09-11 23:26:14 -03:00
FellippeHeitor
27c84393ec
Allows variables up to _BIT * 64
2021-09-11 23:05:26 -03:00
FellippeHeitor
883cfcb525
Display warning when $Checking:Off is used with $Debug
2021-09-11 18:23:31 -03:00
FellippeHeitor
296a46b33c
Fixes PUT
with variable-length strings in UDTs. Closes #133
2021-09-11 00:52:28 -03:00
FellippeHeitor
908a5b179f
Removes fix046$ from variable names before displaying them.
2021-09-09 00:26:51 -03:00
FellippeHeitor
8d479ee8ea
Hopefully fixes the mysterious missing vwatchlabel bug.
2021-08-24 23:33:10 -03:00
FellippeHeitor
f7e53e9166
Fixes "Add All" adding UDTs in Watch List dialog.
2021-08-24 14:46:57 -03:00
FellippeHeitor
2ccfae416a
Sets focus to the debuggee when SLEEP is used.
...
Properly sizes Watch List dialog when there are "hidden" variables in includes.
2021-08-24 13:23:01 -03:00
FellippeHeitor
28661bbf36
Adds minimal support for watching _BIT variables.
2021-08-24 03:53:39 -03:00
FellippeHeitor
38fe93a6cf
Adds support for watching multiple indexes arrays of UDTs.
...
Not multiple dimensions yet tho.
2021-08-24 02:13:42 -03:00
FellippeHeitor
62f3496c36
Adds ability to fetch data from arrays of UDTs.
2021-08-23 18:02:22 -03:00
FellippeHeitor
9423080f6b
Allows watching one element of UDTs (no strings yet).
2021-08-22 00:12:01 -03:00
FellippeHeitor
1049d9db16
Fixes $NOPREFIX mode changing MEM to _MEM as a sub parameter.
2021-08-21 20:09:06 -03:00
FellippeHeitor
82d4de881f
Keeps array index selection made before entering Debug mode.
2021-08-21 17:39:41 -03:00
FellippeHeitor
2fc7380fa6
Begins implementing ways to watch UDTs.
...
Still in a non-working state.
2021-08-20 16:10:28 -03:00
FellippeHeitor
34950c80ea
Visual tweaks to dialogs. Show received array data in Watch List box.
2021-08-19 01:09:18 -03:00
FellippeHeitor
f279839a7b
Reduces number of commands to get a variable's value.
2021-08-17 00:47:13 -03:00
FellippeHeitor
eeff3207d6
Preliminary work to watch arrays (native types).
...
Strings not working yet.
2021-08-16 01:32:07 -03:00
FellippeHeitor
3f80c54e7d
Mere fix of case of array name.
2021-08-15 02:32:40 -03:00
FellippeHeitor
38e0ec37d2
Fixes case adjustment of array names in UBOUND/LBOUND calls.
...
FINALLY! <3
2021-08-15 02:30:26 -03:00
FellippeHeitor
1cbc842a1c
Mere spacing.
2021-08-15 02:28:11 -03:00
FellippeHeitor
083648e617
Makes "Name already in use" error more descriptive.
2021-08-15 00:46:12 -03:00
FellippeHeitor
2af2f4e2a1
Improves handling/signaling of INPUT/LINE INPUT in $DEBUG mode.
2021-08-14 21:28:21 -03:00
FellippeHeitor
9c15901b23
Store variables' id in usedVariableList()
.
2021-08-13 00:52:09 -03:00
FellippeHeitor
66298347a3
Remove (brackets) from around type names in Warnings box.
2021-08-07 19:26:34 -03:00
FellippeHeitor
05fb2d44a2
Prevents users from creating self-referencing TYPE
blocks.
2021-08-07 18:11:57 -03:00
FellippeHeitor
8e69b49304
Fixes string arrays not being added to variable list.
2021-08-06 23:42:14 -03:00
FellippeHeitor
445f192848
Simplifies array range selection (Watch List).
2021-08-06 22:59:08 -03:00
FellippeHeitor
4df2ada743
Adds interface to select which array indexes to watch.
2021-08-05 01:27:57 -03:00
FellippeHeitor
01a3c56685
Allows setting any length string variables from the IDE.
2021-08-03 00:36:21 -03:00
FellippeHeitor
cad9e407d8
First attempt at "set address"
. Nonworking state.
2021-08-01 18:14:14 -03:00
FellippeHeitor
56a61321d1
Adds word-wrapping to status area error messages.
2021-07-31 19:11:53 -03:00
Fellippe Heitor
c766fbc989
Update qb64.bas
...
Keeps IDE errors in log.
2021-07-30 12:04:04 -03:00
Fellippe Heitor
2afe20c5b7
Fixes call to System
breaking $DEBUG mode.
2021-07-29 18:32:04 -03:00
Fellippe Heitor
5fe0902c31
Prevents adding debug code into includes.
2021-07-29 15:08:37 -03:00
Fellippe Heitor
7e5710a364
Allows _MK$/_CV to deal with _OFFSET
...
_UNSIGNED _OFFSET too.
2021-07-28 14:26:32 -03:00
FellippeHeitor
5e2f40c4f1
Ignores local variable requests when out of scope.
2021-07-27 12:18:50 -03:00
FellippeHeitor
a2a49cef01
Allows local variables to be watched (still a bit broken).
2021-07-27 00:28:03 -03:00
FellippeHeitor
cedff4ef5a
Groundwork for variable requesting from the IDE (nonworking state).
...
The _MEMGET part needs extra work.
m is of type _MEM, but it's never assigned - does that have something to do with it?
Should we have something on the C++ side to access those memory blocks?
2021-07-26 14:52:14 -03:00
FellippeHeitor
62878630b5
Improves on Add Watch dialog prototype.
...
Can select individual variables (double-click to toggle), add all, remove all.
2021-07-25 00:19:55 -03:00
FellippeHeitor
0ca12c3503
Fixes FUNCTION id2fulltypename$
to recognize _OFFSET types.
...
Now displays actual type name in Warnings box, instead of the C++ variable name.
2021-07-24 18:01:50 -03:00
FellippeHeitor
8f2e969711
Stores full type name with variable list.
2021-07-24 16:16:18 -03:00
FellippeHeitor
ed59d6411e
Handles new variables added to main module using SHARED in a SUB.
2021-07-24 15:19:29 -03:00
FellippeHeitor
c621917a69
Prevents adding SHARED variables to SUB vWatch()
2021-07-24 12:00:40 -03:00
FellippeHeitor
6436ee76bf
Propagates DIM SHARED variables to all SUBs.
...
`vwatch_local_vars` will make direct reference to SHARED variables, so they can be watched in whatever scope.
2021-07-24 11:51:01 -03:00
FellippeHeitor
53560ec34f
Resets internal variable list when compilation starts ($DEBUG).
2021-07-23 12:12:03 -03:00
Fellippe Heitor
8d2d49d7dc
Restores Step Out/Step Over functionality.
2021-07-23 00:31:11 -03:00
Fellippe Heitor
abfa7cb745
Prevents labels and vWatch calls in $INCLUDEs.
2021-07-23 00:13:11 -03:00
FellippeHeitor
898c0ffedb
Begins folder reorganization (internal/support
).
...
For .bas/.bm/.bi files that are required at compilation time, as opposed to `source`, which is not required for normal operation.
2021-07-22 18:39:20 -03:00
FellippeHeitor
fd9958f9c7
Resets usedVariableList
when compilation starts.
2021-07-22 15:24:24 -03:00
FellippeHeitor
d09a7fcb3a
Fixes order of elements when dealing with STOP ($DEBUG).
2021-07-22 14:08:26 -03:00
FellippeHeitor
231e28c79b
Adds method to allow closing the connection with the IDE.
...
In order to allow $DEBUG to work with programs that call CLEAR, the connection handle used to connect to the IDE is locked by default and cannot be CLOSEd. With this change, the debuggee itself can now unlock the handle and close the link.
2021-07-22 00:18:34 -03:00
FellippeHeitor
30348dd2db
Allows a debuggee to call CLEAR
while keeping connected to the IDE.
2021-07-21 23:54:30 -03:00
FellippeHeitor
77daecccbc
Gets all used variables to be properly stored.
...
This time it looks like it's been nailed.
2021-07-21 18:07:21 -03:00
FellippeHeitor
abe46ca87e
There's a blk of code that never runs in FUNCTION isvalidvariable
...
This is a commit just to show it's known that it's there.
And that I was a coward to remove it.
Maybe n was supposed to be LEN(a$)? Well, it's not. That breaks compilation.
I'll just leave it there.
2021-07-21 15:04:27 -03:00
FellippeHeitor
0724910a2e
Improves detection of used variables; Arrays still to be worked on.
2021-07-21 14:25:21 -03:00
FellippeHeitor
b1ddfd06c7
typ
is undefined in FUNCTION typ2ctyp$
; uses t
instead.
...
Could be causing weird issues; might cause weird issues.
2021-07-21 14:24:35 -03:00
FellippeHeitor
46822028f9
Fixes typos in comments ( 🤦 ).
2021-07-21 14:23:21 -03:00
FellippeHeitor
dd686b4071
Store variable creation data after regid
is called.
2021-07-21 09:48:52 -03:00
FellippeHeitor
f09bea827b
Refines variable collection code ($DEBUG).
2021-07-21 09:30:48 -03:00
FellippeHeitor
1cad7db996
Prevents adding goto
re:undefined vWatch labels.
2021-07-21 00:02:15 -03:00
FellippeHeitor
b56ceb924d
Fixes vWatch labels not being added.
2021-07-20 20:11:45 -03:00
FellippeHeitor
ec807702ce
Fixes Next
lines not being "steppable".
2021-07-20 17:28:02 -03:00
FellippeHeitor
2ca6cb7c9a
Improves vWatch label injection ($DEBUG
).
2021-07-20 17:12:00 -03:00
FellippeHeitor
dfb33206b4
Fixes duplicate SKIP labels in some scenarios.
2021-07-20 13:16:06 -03:00
FellippeHeitor
fe4575a181
Allows empty procedures when $DEBUG is present.
2021-07-20 13:08:09 -03:00
FellippeHeitor
9ade4aea75
Declares *vwatch_local_vars
when there are no local vars.
2021-07-20 12:50:17 -03:00
FellippeHeitor
5e53786255
Implements "Skip Line"
...
Ctrl+P to set line to skip.
Ctrl+Line Click to set line to skip with mouse.
2021-07-20 02:50:54 -03:00
FellippeHeitor
aefde3eb55
Implements Set Next Line.
...
Allows arbitrarily changing the execution order from the IDE.
Ctrl+G in $DEBUG mode to launch the Set Next Line dialog.
2021-07-20 01:06:30 -03:00
FellippeHeitor
4d17873952
Allows END IF and END SELECT to be steppable.
2021-07-19 23:13:00 -03:00
FellippeHeitor
d1249d25d5
Send the IDE data when the proram is closing via X button.
2021-07-19 18:08:04 -03:00
FellippeHeitor
bfe081b421
Handles STOP as a regular breakpoint in $DEBUG mode.
2021-07-19 02:30:16 -03:00
FellippeHeitor
05d5086682
Prevents "ghost" variables from being added to watch list.
2021-07-19 02:29:13 -03:00
FellippeHeitor
de236d4a5f
Uses ENVIRON to set send the port number to the debuggee. Also:
...
- Limits sending "call" info to the IDE (not to hog the communication channel)
- Add $INCLUDE info to call stack.
2021-07-19 00:59:54 -03:00
FellippeHeitor
2f61b9e541
Tweak to previous commit.
...
`id` can change from the initial line to the last on in this commit. These changes prevent issues with that.
2021-07-18 22:16:16 -03:00
FellippeHeitor
8d35b87fd1
Initial implementation of call stack ($DEBUG).
2021-07-18 22:02:41 -03:00
FellippeHeitor
c59cef04d7
Allows sub/functions to be reported in $INCLUDEs.
...
Reorganizes source/utilities.
2021-07-17 17:25:48 -03:00
FellippeHeitor
df691cc3f2
Adds code to send "end signal" even with $CHECKING:OFF. ($DEBUG)
2021-07-17 17:11:02 -03:00
Fellippe Heitor
ae887507c2
On error, report back to the IDE. ($DEBUG)
2021-07-16 23:18:46 -03:00
Fellippe Heitor
78fb2ff1b9
Reduces parameters in SUB_VWATCH()
...
Since `vwatch_linenumber` is a shared variable, it doesn't need to be
passed to `SUB_VWATCH()`.
2021-07-16 18:51:35 -03:00
Fellippe Heitor
88e2a1fa83
Nooooow it seems proper.
2021-07-16 12:11:41 -03:00
Fellippe Heitor
8d29964587
Reenables detection of undefined arrays.
2021-07-16 12:06:06 -03:00
Fellippe Heitor
4e5c35bb7f
Prevents 'fake' variables from showing up.'
2021-07-16 11:59:17 -03:00
Fellippe Heitor
af2de0f24e
Merge development
2021-07-16 09:25:13 -03:00
Luke Ceddia
809c1fe016
Fix cast of vwatch_local_vars
2021-07-16 16:29:04 +10:00
Fellippe Heitor
df56b030f1
Makes sure only vars and arrays are added
2021-07-16 02:26:14 -03:00
Fellippe Heitor
e95e8a4825
Adds undeclared variables too
2021-07-16 01:23:46 -03:00
Luke Ceddia
8829518adf
Send var-address init code to maindata.txt instead of global.txt
2021-07-16 14:07:27 +10:00
Fellippe Heitor
74d2e0853a
END and SYSTEM send a 'quit' signal to the IDE
2021-07-16 00:52:06 -03:00
Fellippe Heitor
f0751243ef
Begins work for variable watching
2021-07-15 17:00:31 -03:00
FellippeHeitor
eede761f97
Allows OPTION _EXPLICIT/_EXPLICITARRAY to be anywhere.
...
They can be duplicate now too. And coexist.
2021-07-15 03:34:08 -03:00