![]() ZBasic Language Reference
151
ZBasic Microcontrollers
useless-code
Code that is known to have no useful effect may be eliminated. For
example, assigning a value to a local variable that is never used is
considered useless.
The invocation option -help-optimize displays similar information and also indicates which
optimizations are on by default.
--out=<file>
This option explicitly specifies the name for the file for the generated code. In the absence of this option,
the output file name is derived from either the project file, if specified, or the first file compiled. If an
earlier or later option specifies that no code should be generated this option is ignored.
--overload
This option enables procedure overloading. This option is implied by -objects.
--project=<file>
This option specifies the name of a project file. A project file is similar to an arguments file in that it may
contain additional compiler options and filenames that are processed before processing subsequent
command line options. Additionally, however, several other file names (e.g. map file, output file) are
derived from the first-specified projects filename in the absence of other overriding options. Project files
may contain blank lines and comment lines (beginning with a pound sign or an apostrophe). Project files
may not be nested but an arguments file may be specified within a project file and vice versa.
--strict={On|Off|Default}
This option specifies whether strict syntax mode should be on, off or the default state for the selected
language. See Section 2.3.1 for more information on the default state of this option for the supported
language variants and the effects of strict mode.
--string-size=<value>
This option specifies the default string length, in decimal, for statically allocated strings in modules
subsequently processed. It may be overridden in any module by the Option StringSize directive.
See Section 2.3.1 for more information on how this value is used.
--target-CPU=<target>
This option is deprecated, use -target-device instead.
--target-config[=<config file>]
--target-config-force[=<config file>]
The first form of this option is silently ignored unless the target device is a generic device. The second
form forces processing of the option irrespective of the current target device. In both cases, if the option
appears without the equal sign and filename the name of the configuration file is inferred by taking the full
path of the project file (which must have been previously specified) and replacing the extension with
.cfg. The specified or inferred file is processed as if it had been specified with the -args option, i.e.
the file should contain additional command line options. Usually, the command line options in the
configuration file will be limited to -device-parameter options but they are not restricted to being only
those. The first form of this option is useful because it will be ignored when compiling for a ZX device (for
|