Delphi Compiler Directives (List) Index
Go Up to Delphi Language Reference
The following topic lists the RAD Studio compiler directives.
Overview
Compiler Directives
Local and Global describe the extent to which a compiler directive setting applies during compilation.
- Local directives affect the current unit from the position they are declared to the end of the source code file. The settings can be changed later within the source file.
- Global directives affect the entire compiled module or the entire project compilation.
| Delphi Compiler Directive | Associated Symbol | Scope |
|---|---|---|
|
{$A},{$ALIGN} |
Local | |
|
{$ALLOWBIND} |
Global | |
|
{$ALLOWISOLATION} |
Global | |
|
{$APPTYPE} |
Global | |
|
{$C},{$ASSERTIONS} |
Local | |
|
Boolean short-circuit evaluation (Delphi compiler directive) |
{$B},{$BOOLEVAL} |
Local |
|
{$CODEALIGN} |
Local | |
|
Compiler directives for libraries or shared objects (Delphi) |
{$LIBPREFIX}, {$LIBSUFFIX}, {$LIBVERSION} |
Global |
|
{$IFDEF}, {$IFNDEF}, {$IF}, {$ELSEIF}, {$ELSE}, {$ENDIF}, {$IFEND} |
Local | |
|
{$NXCOMPAT} |
Global | |
|
{$D},{$DEBUGINFO} |
Global | |
|
{$DEFINE} |
Local | |
|
{$DENYPACKAGEUNIT} |
Local | |
|
{$D},{$DESCRIPTION} |
Global | |
|
{$DESIGNONLY} |
Local | |
|
{$DYNAMICBASE} |
Local | |
|
{$ELSE} |
Local | |
|
{$ELSEIF} |
Local | |
|
{$LARGEADDRESSAWARE} |
Global | |
|
{$ENDIF} |
Local | |
|
{$E},{$EXTENSION} |
Global | |
|
{$ObjExportAll} |
Global | |
|
{$X},{$EXTENDEDSYNTAX} |
Global | |
|
{$EXTENDEDCOMPATIBILITY} |
Local | |
|
{$EXTERNALSYM [ 'typeNameInHpp' [ 'typeNameInHppUnion' ]]} |
Local | |
| Finite float | {$FINITEFLOAT} | Local |
|
{$EXCESSPRECISION} |
Local | |
|
{$HIGHCHARUNICODE} |
Local | |
|
{$HINTS} |
Local | |
|
{$HPPEMIT} |
Local | |
|
{$IFDEF} |
Local | |
|
{$IF} |
Local | |
|
{$IFEND} |
Local | |
|
{$IFNDEF} |
Local | |
|
{$IFOPT} |
Local | |
|
{$IMAGEBASE} |
Global | |
|
{$IMPLICITBUILD} |
Global | |
|
{$G},{$IMPORTEDDATA} |
Local | |
|
{$I},{$INCLUDE} |
Local | |
|
{$I},{$IOCHECKS} |
Local | |
|
{$LEGACYIFEND} |
Local | |
|
{$L file},{$LINK file} |
Local | |
|
{$L+},{$LOCALSYMBOLS} |
Global | |
|
{$H},{$LONGSTRINGS} |
Local | |
|
{$M},{$MINSTACKSIZE},{$MAXSTACKSIZE} |
Global | |
|
{$MESSAGE} |
Local | |
|
{$METHODINFO} |
Local | |
|
{$Z1},{$Z2},{$Z4},{$MINENUMSIZE 1},{$MINENUMSIZE 2},{$MINENUMSIZE 4} |
Local | |
|
{$NODEFINE [ 'typeNameInHpp' [ 'typeNameInHppUnion' ]]} |
Local | |
|
{$NOINCLUDE} |
Local | |
|
{$OBJTYPENAME typeIdent ['{B|N}typeNameInObj']} |
Global | |
|
{$OLDTYPELAYOUT ON} |
Local | |
|
{$P},{$OPENSTRINGS} |
Local | |
|
{$O},{$OPTIMIZATION} |
Local Note:
Scope is global for DCCIOSARM64 compiler. | |
| Option OPT (Delphi) | {$PUSHOPT},{$POPOPT} | Local |
|
{$Q},{$OVERFLOWCHECKS} |
Local | |
|
{$SetPEFlags},{$SetPEOptFlags} |
Local | |
|
{$SETPEOSVERSION} |
Local | |
|
{$SETPESUBSYSVERSION} |
Local | |
|
{$SETPEUSERVERSION} |
Local | |
|
{$U},{$SAFEDIVIDE} |
Local | |
|
{$POINTERMATH} |
Local | |
|
{$R},{$RANGECHECKS} |
Local | |
|
{$REALCOMPATIBILITY} |
Local | |
|
{$REGION},{$ENDREGION} |
Local | |
|
Reserved address space for resources (Delphi, Linux) |
{$M},{$RESOURCERESERVE} |
Global |
|
{$R},{$RESOURCE} |
Local | |
|
{$RTTI INHERIT|EXPLICIT} |
Local | |
|
{$RUNONLY} |
Local | |
|
{$M},{$TYPEINFO} |
Local | |
|
{$SCOPEDENUMS} |
Local | |
|
{$W},{$STACKFRAMES} |
Local | |
|
{$STRONGLINKTYPES} |
Global | |
|
{$HIGHENTROPYVA} |
Global | |
|
{$Y},{$REFERENCEINFO},{DEFINITIONINFO} |
Global | |
|
{$TSAWARE} |
Global | |
|
{$TEXTBLOCK} |
Local | |
|
{$T},{$TYPEDADDRESS} |
Global | |
|
{$UNDEF} |
Local | |
|
{$V},{$VARSTRINGCHECKS} |
Local | |
|
{$WARN} |
Local | |
|
{$WARNINGS} |
Local | |
|
{$WEAKPACKAGEUNIT} |
Local | |
|
{$WEAKLINKRTTI} |
Local | |
|
{$J},{$WRITEABLECONST} |
Local | |
|
{$ZEROBASEDSTRINGS} |
Local |