Definice vlastního kompilátoru
 
Symboly předzpracování definované kompilátorem.

Popis

Vlastní definice nastavuje kompilátor a mohou být využity jako jiné definované symboly. Vlastaní definice často předávají informace o stavu kompilátoru buď jako obecné (generální), nebo v určitém bodě kompilačního procesu. Většina vlastních definicí je spojena s hodnotou.

Informace o platformě
Definuje poskytování informací o systému.
Informace o verzi
Definuje poskytování informací o použité FBC verzi kompilátoru.
Přepínače příkazového řádku
Definuje poskytování informací o použití FBC pomocí přepínačů příkazového řádku.
Informace o prostředí OS
Definuje poskytování informací o prostředí operačního systému.
Specifické kontextové (související) informace
Definuje poskytování souvisejících informací o kompilačním procesu.

Informace o platformě
__FB_WIN32__
Definuje jestli se kompiluje pro Windows.
__FB_LINUX__
Definuje jestli se kompiluje pro Linux.
__FB_DOS__
Definuje jestli se kompiluje pro DOS.
__FB_CYGWIN__
Definuje jestli se kompiluje pro Cygwin.
__FB_FREEBSD__
Definuje jestli se kompiluje pro FreeBSD.
__FB_NETBSD__
Definuje jestli se kompiluje pro NetBSD.
__FB_OPENBSD__
Definuje jestli se kompiluje pro OpenBSD.
__FB_DARWIN__
Definuje jestli se kompiluje pro Darwin.
__FB_XBOX__
Definuje jestli se kompiluje pro Xbox.
__FB_BIGENDIAN__
Definuje jestli se kompiluje pro systém používající (?)big-endian řazení bajtů.
__Fb_Pcos__
Definuje jestli se kompiluje pro běžné PC OS (např. DOS, Windows, OS/2).
__Fb_Unix__
Definuje jestli se kompiluje pro Unixové OS.
__Fb_64Bit__
Definuje jestli se kompiluje pro 64bit.
__Fb_Arm__
Definuje jestli se kompiluje pro ARM architekturu.

Informace o verzi
__FB_VERSION__
Definuje jako řetězcový literál verzi kompileru.
__FB_VER_MAJOR__
Definuje jako celočíselný literál hlavní číslo verze kompileru.
__FB_VER_MINOR__
Definuje jako celočíselný literál vedlejší číslo kompileru.
__FB_VER_PATCH__
Definuje jako celočíselný literál číslo záplaty (patch) kompileru.
__FB_MIN_VERSION__
Makro pro kontrolu minimální verze kompileru.
__FB_BUILD_DATE__
Definuje jako řetězcový literál datum sestavení (build) kompilátoru.
__FB_SIGNATURE__
Definuje jako řetězcový literál podpis kompilátoru.

Přepínače příkazového řádku
__Fb_Asm__
Definuje buď "Intel" nebo "ATT" v závislosti na -asm.
__Fb_Backend__
Definuje buď "gas" nebo "gcc" v závislosti na -gen.
__Fb_Gcc__
True (-1) pokud je použit -gen gcc, jinak false (0).
__FB_MAIN__
Definuje jestli kompiluje modul se vstupním bodem.
__FB_DEBUG__
True (-1) v případě, že byl použit spínač "-g", jinak (0).
__FB_ERR__
Nula (0) když nejsou použity spínače "-e", "-ex" nebo "-exx".
__Fb_Fpmode__
Definuje jako "fast", je-li kompilováno pod rychlou SSE matematikou, jinak "precise".
__Fb_Fpu__
Definuje jako "sse", když se kompiluje pro SSE matematetický koprocesor, nebo "x87" pro normální x87 matematický koprocesor.
__FB_LANG__
Definuje řetězcový literál použitého dialektu "-lang".
__FB_MT__
True (-1) když je použit "-mt" přepínač, jinak false (0).
__FB_OUT_DLL__
True (-1) jsou-li v modulu sestaveny a propojeny sdílené knihovny, jinak false (0).
__FB_OUT_EXE__
True (-1) moduly jsou propojeny a sestaveny do spustitelného souboru, jinak false (0).
__FB_OUT_LIB__
True (-1) moduly jsou sestaveny a spojeny do statické knihovny, jinak nula (0).
__FB_OUT_OBJ__
True (-1) moduly jsou pouze sestaveny, jinak nula (0).
__FB_SSE__
Definuje jestli se kompiluje pro SSE matematický koprocesor.
__Fb_Vectorize__
Definuje jako úroveň automatické vektorizace (0 to 2)
Informace o prostředí OS
__FB_ARGC__
Definuje jako celočíselný literál počet argumentů příkazového řádku předaných do programu.
__FB_ARGV__
Definuje jako ZString Ptr Ptr na argumenty příkazového řádku předané programu.
__DATE__
Definuje jako řetězcový literál datum kompilace ve formátu "mm-dd-yyyy".
__Date_Iso__
Definuje jako řetězcový literál datum kompilace ve formátu "yyyy-mm-dd".
__TIME__
Definuje jako řetězcový literál čas kompilace.
__PATH__
Definuje jako řetězcový literál absolutní cestu k modulu.

Specifické související informace
__FILE__ a __FILE_NQ__
Definováno jako název modulu.
__FUNCTION__ a __FUNCTION_NQ__
Definováno jako název procedury, kde je používána.
__LINE__
Definuje jako celočíselný literál řádek modulu kde je použit.
__FB_OPTION_BYVAL__
True (-1) pokud jsou parametry deklarovány standardně hodnotou, jinak nula (0).
__FB_OPTION_DYNAMIC__
True (-1) pokud mají všechna pole proměnnou délku, jinak nula (0).
__FB_OPTION_ESCAPE__
True (-1) pokud jsou řetězcové literály zpracovány pro výstupní sekvence, jinak nula (0).
__Fb_Option_Gosub__
True (-1) pokud je zapnuta podpora gosub, jinak nula (0).
__FB_OPTION_EXPLICIT__
True (-1) pokud je třeba explicitně deklarovat proměnné a objekty, jinak nula (0).
__FB_OPTION_PRIVATE__
True (-1) pokud jsou všechny procedury ve výchozím nastavení soukromé, jinak nula (0).
 

Překlad: Gmisiycs 8.2.2016