9
Option Directive
Default for BasicX
Default for ZBasic
Strict
On
Off
AllocStr
Off
On
Option AllocStr [On | Off | Default]
Default: On
By default, native compilation mode uses an allocation strategy for strings called dynamic string
allocation. In contrast, BasicX uses an allocation strategy called static allocation. This option directive
allows you to select the dynamic allocation strategy (Option AllocStr On) or the BasicX-compatible
static allocation strategy (Option AllocStr Off). Specifying Option AllocStr Default sets the
option to the default for the currently selected language. If neither On, Off nor Default is specified, the
value On is assumed. See Section 3.26.2 for more information on the two allocation strategies.
Examples
Option AllocStr
Option AllocStr Off
Option StringSize {<value> | Default}
Default: 20
When string variables are defined, space to hold the characters of the string is allocated either statically
or dynamically. When the space is statically allocated a fixed number of bytes of space is set aside for
the string at compile-time thus setting the maximum size of that string. This option specifies the number
of characters that should be reserved for statically allocated string storage. See the description of the
Option AllocStr directive for more information about dynamically allocated string storage. If Option
StringSize Default is specified the default value for the string size is used. This is useful if the
string size was set using a command line option and you want to restore it to the default for this particular
module.
Examples
Option StringSize 25
Option StringSize Default
Option Strict [On | Off | Default]
Default: Off
This option directive, supported for BasicX compatibility, enables or disables so-called strict syntax
checking. You can enable strict mode by using Option Strict by itself or by including the keyword
On. You disable strict syntax checking by using Option Strict Off. Specifying Option Strict
Default sets the option to the default for the currently selected language.
The implications of strict syntax checking are noted in the description of each affected element but a
summary of the effects is given here.
-
the loop index variable of a For loop has restrictions on lifetime, visibility and accessibility
-
logical operators like Not, And and Or may not be used with signed integral data types
Example
Option Strict Off
Option TargetDevice <device-name>
Default: ZX24
Due to differences between the various members of the ZX- series, the compiler needs to know for which
device it should compile the code. This allows it to generate the correct code for the intended device. At
present, the supported values for <device-name> are ZX24, ZX24a, ZX-24n, ZX40, ZX40a, ZX40n,