Fixed a lot of bugs

* Fixed ByRef variables of defined types causing crashes
* Fixed ArrayDim causing crashes with members of types
* Added parent references to number and string values for use with ByRef
* Added TypeArrayDim
* Added the ability to use custom types in embedded functions
* Added the ability to create types in embedded_functions.bas
* Added new output file for embedded (rcbasic_dev4.txt) that will output code to generate types
* Added defined types to byref exceptions
This commit is contained in:
n00b87
2024-04-23 23:27:28 -05:00
parent 1248387749
commit f8fb9a1ccb
10 changed files with 2164 additions and 1576 deletions

View File

@@ -516,8 +516,12 @@ sub JoinMatrixRows(mA, mB, mC)
sub JoinMatrixColumns(mA, mB, mC)
'v4.0
function TypeArrayDim(Byref id$)
function TypeArraySize(Byref id, array_dim)
sub TypeArrayCopy(ByRef src, ByRef dst)
sub TypeArrayFill(ByRef src, fdata)
'Empty Type is used mainly for built-in functions that need to have a user type specified to be able to compile properly
type empty
end type
function TypeArrayDim(Byref id as empty)
function TypeArraySize(Byref id as empty, array_dim)
sub TypeArrayCopy(ByRef src as empty, ByRef dst as empty)
sub TypeArrayFill(ByRef src as empty, fdata as empty)