Platform Information __FB_WIN32__ Version InformationDefined if compiling for Windows. __FB_LINUX__Defined if compiling for Linux. __FB_DOS__Defined if compiling for DOS. __FB_CYGWIN__Defined if compiling for Cygwin. __FB_FREEBSD__Defined if compiling for FreeBSD. __FB_NETBSD__Defined if compiling for NetBSD. __FB_OPENBSD__Defined if compiling for OpenBSD. __FB_DARWIN__Defined if compiling for Darwin. __FB_XBOX__Defined if compiling for Xbox. __FB_BIGENDIAN__Defined if compiling on a system using big-endian byte-order. __Fb_Pcos__Defined if compiling for a common PC OS (e.g. DOS, Windows, OS/2). __Fb_Unix__Defined if compiling for a Unix-like OS. __FB_VERSION__ Command-line switchesDefined as a string literal of the compiler version. __FB_VER_MAJOR__Defined as an integral literal of the compiler major version number. __FB_VER_MINOR__Defined as an integral literal of the compiler minor version number. __FB_VER_PATCH__Defined as an integral literal of the compiler patch number. __FB_MIN_VERSION__Macro to check for a minimum compiler version. __FB_BUILD_DATE__Defined as a string literal of the compiler build date. __FB_SIGNATURE__ Defined as a string literal of the compiler signature. __Fb_Backend__ Defined to either "gas" or "gcc" depending on -gen. __Fb_Gcc__True (-1) if -gen gcc is used, false (0) otherwise. __FB_MAIN__Defined if compiling a module with an entry point. __FB_DEBUG__True (-1) if the "-g" switch was used, false (0) otherwise. __FB_ERR__Zero (0) if neither the "-e", "-ex" or "-exx" switches were used. __Fb_Fpmode__Defined as "fast" if compiling for fast SSE math, "precise" otherwise. __Fb_Fpu__Defined as "sse" if compiling for SSE floating point unit, or "x87" for normal x87 floating-point unit. __FB_LANG__Defined to a string literal of the "-lang" dialect used. __FB_MT__True (-1) if the "-mt" switch was used, false (0) otherwise. __FB_OUT_DLL__True (-1) in a module being compiled and linked into a shared library, false (0) otherwise. __FB_OUT_EXE__True (-1) in a module being compiled and linked into an executable, false (0) otherwise. __FB_OUT_LIB__True (-1) in a module being compiled and linked into a static library, zero (0) otherwise. __FB_OUT_OBJ__True (-1) in a module being compiled only, zero (0) otherwise. __FB_SSE__Defined if compiling for SSE floating point unit. __Fb_Vectorize__Defined as the level of automatic vectorization (0 to 2) | Environment Information __FB_ARGC__ Context-specific InformationDefined as an integer literal of the number of command-line arguments passed to the program. __FB_ARGV____DATE__ Defined as a string literal of the compilation date. __TIME__Defined as a string literal of the compilation time. __PATH__Defined as a string literal of the absolute path of the module. __FILE__ and __FILE_NQ__ Defined as the name of the module. __FUNCTION__ and __FUNCTION_NQ__Defined as the name of the procedure where it's used. __LINE__Defined as an integer literal of the line of the module where it's used. __FB_OPTION_BYVAL__True (-1) if parameters are declared by value by default, zero (0) otherwise. __FB_OPTION_DYNAMIC__True (-1) if all arrays are variable-length, zero (0) otherwise. __FB_OPTION_ESCAPE__True (-1) if string literals are processed for escape sequences, zero (0) otherwise. __Fb_Option_Gosub__True (-1) if gosub support is enabled, zero (0) otherwise. __FB_OPTION_EXPLICIT__True (-1) if variables and objects need to be explicitly declared, zero (0) otherwise. __FB_OPTION_PRIVATE__True (-1) if all procedures are private by default, zero (0) otherwise. |