Appendix A Compiler preprocessor reference

Top  Previous  Next

The preprocessor of the compiler handles such things as constants, include files, and conditional compiling. This document contains the current preprocessor commands as of version 1.0. Other commands are built in to the language and covered in the main help files.

/*  */

Beginning and end of a block comment

'

Beginning of a line comment

_asm

Begins an inline assembly block

_endasm

Ends an inline assembly block

$command declaration

Marks a subroutine as a command instead of a function. For internal use and command paks only

AUTODEFINE "ON" or "OFF"

Controls auto definition of variables by assignment.  If "OFF" then all variables need to be defined before use.  Defaults to "ON"

$DEFINE conditional_identifer

Defines a conditional identifier

$ENDIF

Ends a conditional compiling block

$ELSE

False conditional block start

$IFDEF conditional_indentifier

Begins a conditional compiling block

$IFNDEF conditional_indentifier

Begins a conditional compiling block

$INCLUDE "filename"

Include headers and source files into the current compile

$MAIN

Marks the beginning execution point of the program. Used in project mode compiling

$UNDECLARE name

Removes a previous DECLARE statement from the current compile.

$USE "filename"

Includes an import library, static library, or object file into the linker stage of the build.

$OPTION "value"

Changes the behavior of the compiler depended on 'value'.  Currently defined options include:

"FLOAT" - Treats all numeric constants containing a decimal point as type FLOAT

"DOUBLE" - Treats all numeric constants containing a decimal point as type DOUBLE (default)

CONST name = value

Defines a compile time constant

EXPORT function_name

Marks a subroutine as exported in a DLL build.

EXTERN name as type

DECLARE EXTERN declaration

Creates a linker reference to an external global variable or subroutine.

GLOBAL function_name

Marks a subroutine as globally visible to other object files

SETID "name", value

Defines a compile time @ constant.

SET_INTERFACE variable, interface name

Sets the compile time interface of a COMREF variable

SETTYPE variable, type name

Sets the compile time type of a POINTER