JEDI Help:RTLFeatures
From Project JEDI Wiki
Jump to navigationJump to searchJEDI Help: RTL Features
Search in JEDI Help
Search in all projects
Summary
Compiler symbols for detecting RTL features.
Pascal
{$IFDEF SYMBOL} // The RTL feature is available {$ENDIF SYMBOL}
Description
Once jedi.inc is included at the top of your pascal source file, the following compiler symbols are defined depending on the RTL features.
These symbols can be used for code conditional compilation based on available RTL feature.
These symbols are defined depending on the RTL family:
Symbol | Description |
VCL | Defined for Delphi/BCB (Win32) exactly if VisualCLX is not defined |
VisualCLX | Defined for Kylix; needs to be defined for Delphi/BCB to use JCL with VisualCLX applications. |
XPLATFORM_RTL | The RTL supports crossplatform function names (e.g. RaiseLastOSError) (D6+/BCB6+/FPC) |
These symbols identify the RTL version:
Symbol | Description |
RTL80_UP | Defined when compiling with Delphi 1 or higher |
RTL90_UP | Defined when compiling with Delphi 2 or higher |
RTL93_UP | Defined when compiling with C++Builder 1 or higher |
RTL100_UP | Defined when compiling with Delphi 3 or higher |
RTL110_UP | Defined when compiling with C++Builder 3 or higher |
RTL120_UP | Defined when compiling with Delphi 4 or higher |
RTL125_UP | Defined when compiling with C++Builder 4 or higher |
RTL130_UP | Defined when compiling with Delphi 5 or C++Builder 5 or higher |
RTL140_UP | Defined when compiling with Delphi 6, Kylix 1, 2 or 3 or C++Builder 6 or higher |
RTL150_UP | Defined when compiling with Delphi 7 or higher |
RTL160_UP | Defined when compiling with Delphi 8 or higher |
RTL170_UP | Defined when compiling with Delphi Personalities of BDS 3.0 or higher |
RTL180_UP | Defined when compiling with Delphi or C++Builder Personalities of BDS 4.0 or higher |
RTL185_UP | Defined when compiling with Delphi or C++Builder Personalities of BDS 5.0 or higher |
RTL190_UP | Defined when compiling with Delphi.NET of BDS 5.0 or higher |
RTL200_UP | Defined when compiling with Delphi or C++Builder Personalities of BDS 6.0 or higher |
RTL210_UP | Defined when compiling with Delphi or C++Builder Personalities of BDS 7.0 or higher |
RTL220_UP | Defined when compiling with Delphi or C++Builder Personalities of BDS 8.0 or higher |
RTL230_UP | Defined when compiling with Delphi or C++Builder Personalities of BDS 9.0 or higher |
If the RTL is CLR, then the following symbols are defined depending on its version:
Symbol | Description |
CLR | Defined when compiling for .NET |
CLR10 | Defined when compiling for .NET 1.0 (may be overriden by FORCE_CLR10) |
CLR10_UP | Defined when compiling for .NET 1.0 or higher |
CLR11 | Defined when compiling for .NET 1.1 (may be overriden by FORCE_CLR11) |
CLR11_UP | Defined when compiling for .NET 1.1 or higher |
CLR20 | Defined when compiling for .NET 2.0 (may be overriden by FORCE_CLR20) |
CLR20_UP | Defined when compiling for .NET 2.0 or higher |
Symbol | Description |
HAS_UNIT_LIBC | Unit Libc exists (Kylix, FPC on Linux/x86) |
HAS_UNIT_RTLCONSTS | Unit RTLConsts exists (D6+/BCB6+/FPC) |
HAS_UNIT_TYPES | Unit Types exists (D6+/BCB6+/FPC) |
HAS_UNIT_VARIANTS | Unit Variants exists (D6+/BCB6+/FPC) |
HAS_UNIT_STRUTILS | Unit StrUtils exists (D6+/BCB6+/FPC) |
HAS_UNIT_DATEUTILS | Unit DateUtils exists (D6+/BCB6+/FPC) |
HAS_UNIT_CONTNRS | Unit contnrs exists (D6+/BCB6+/FPC) |
HAS_UNIT_HTTPPROD | Unit HTTPProd exists (D9+) |
HAS_UNIT_GIFIMG | Unit GifImg exists (D11+) |
HAS_UNIT_ANSISTRINGS | Unit AnsiStrings exists (D12+) |
HAS_UNIT_PNGIMAGE | Unit PngImage exists (D12+) |
HAS_UNIT_CHARACTER | Unit Character exists (D12+) |
HAS_UNIT_RTTI | Unit RTTI is available (D14+) |
HAS_UNIT_REGULAREXPRESSIONSAPI | Unit RegularExpressionsAPI is available (D15+) |
HAS_UNIT_SYSTEM_UITYPES | Unit System.UiTypes is available (D16+) |
About
Contribute to this help topic
This documentation wiki is based on the collaborative effort of Project JEDI users. Your edits are welcome in order to improve documentation quality: edit this page