Borland Compiler Conditional Defines
Product Name | Version | Conditional Define | COMPILER VERSION | RTL VERSION |
---|---|---|---|---|
Embarcadero Delphi XE2 | 16.0 | VER230 | 23.0 | 23.0 |
Embarcadero C++Builder XE2 | 16.0 | VER230 | 23.0 | 23.0 |
Embarcadero Delphi XE | 15.0 | VER220 | 22.0 | 22.0 |
Embarcadero C++Builder XE | 15.0 | VER220 | 22.0 | 22.0 |
Embarcadero Delphi Prism 2010 | 3.0 | PRISM and VER30 (9) todo | - | - |
Embarcadero Delphi 2010 | 14.0 | VER210 | 21.0 | 21.0 |
Embarcadero C++Builder 2010 | 14.0 | VER210 | 21.0 | 21.0 |
CodeGear Delphi Prism | 3.0 | PRISM and VER30 (9) | - | - |
CodeGear Delphi 2009 | 12.0 | VER200 | 20.0 | 20.0 |
CodeGear C++Builder 2009 | 12.0 | VER200 | 20.0 | 20.0 |
CodeGear Delphi 2007 for .NET | 11.0 | VER190 | ? | ? |
CodeGear Delphi 2007 for Win32 | 11.0 | VER180 and VER185 (6) | 18.5 | 18.0 |
Borland Developer Studio 2006 | 10.0 | VER180 | 18.0 | 18.0 |
Borland Delphi 2005 | 9.0 | VER170 | 17.0 | 17.0 |
Borland Delphi 8 for .NET | 8.0 | VER160 (1) | 16.0 | 16.0 |
Borland C++Builder X | 1.0 | -none- (8) | ? | ? |
Borland C# Builder | 1.0 | VER160 (1) | ? | ? |
Borland Delphi 7 | 7.0 | VER150 | 15.0 | 15.0 |
Borland Kylix 3 | 3.0 | VER140 (2) | ? | ? |
Borland C++Builder 6 | 6.0 | VER140 (2) | ? | ? |
Borland Kylix 2 | 2.0 | VER140 (2) | ? | ? |
Borland Delphi 6 | 6.0 | VER140 (2) | 14.01 | 14.31 |
Borland Kylix | 1.0 | VER140 (2) | ? | ? |
Borland C++Builder 5 | 5.0 | VER130 (3) | - | - |
Borland Delphi 5 | 5.0 | VER130 (3) | - | - |
Borland C++Builder 4 | 4.0 | VER125 | - | - |
Borland Delphi 4 | 4.0 | VER120 | - | - |
Borland C++Builder 3 | 3.0 | VER110 (4) | - | - |
Borland Delphi 3 | 3.0 | VER100 | - | - |
Borland C++ 5 | 5.0 | ? | - | - |
Borland C++Builder 1 | 1.0 | VER93 | - | - |
Borland Delphi 2 | 2.0 | VER90 | - | - |
Borland C++ 4.5 | 4.5 | ? | - | - |
Borland Delphi | 1.0 | VER80 | - | - |
Borland C++ 4 | 4.0 | ? | - | - |
Borland Pascal 7 | 7.0 | VER70 | - | - |
Borland C++ 3.1 | 3.1 | ? | - | - |
Turbo Pascal for Windows 1.5 | 1.5 | VER15 (7) | - | - |
Turbo C++ for DOS 3 | 3.0 | ? | - | - |
Borland C++ 3 | 3.0 | ? | - | - |
Turbo C++ for Windows 3 (Win16) | 3.0 | ? | - | - |
Turbo Pascal for Windows 1.0 | 1.0 | VER10 (7) | - | - |
Borland C++ 2 | 2.0 | ? | - | - |
Turbo Pascal 6 | 6.0 | VER60 | - | - |
Turbo C++ for DOS | 1.0 | ? | - | - |
Turbo C for DOS 2 | 2.0 | ? | - | - |
Turbo Pascal 5.5 | 5.5 | VER55 | - | - |
Turbo C for DOS 1.5 | 1.5 | ? | - | - |
Turbo Pascal 5 | 5.0 | VER50 | - | - |
Turbo Pascal 4 | 4.0 | VER40 | - | - |
Turbo C for DOS | 1.0 | ? | - | - |
Turbo Pascal 3 | 3.0 | VER30 | - | - |
Turbo Pascal 2 | 2.0 | -none- (5) | - | - |
Turbo Pascal 1 | 1.0 | -none- (5) | - | - |
- This conditional define is shared by the Delphi compilers used to build C#Builder 1 and Delphi 8, which do not natively support Delphi for Win32. This define is used in the “IDE Integration Packs” that were released to Borland partners in order to allow IDE plugins like ModelMaker Code Explorer and Castalia to be compiled.
- This conditional define is shared between C++Builder 6, Delphi 6, Kylix 1, Kilyx 2, and Kylix 3 (Checking for the conditional define “LINUX” helps to determine whether the compiler is Kylix or Delphi and “BCB” can be used to determine if C++Builder is being used).
- This conditional define is shared with C++Builder 5
- C++Builder 3.0 used VER110 (it had its own version of the Delphi compiler included).
- They are not defined in Turbo Pascal 1 & 2.
- Delphi 2007 is a non-breaking release of the compiler and VCL use VER180 But since there are differences, especially with VCL having to do with Vista, you can target Delphi 2007 specifically with VER185.
- delphi.wikia.com states it is VER70. This is not correct. I also tested Turbo Pascal for Windows 1.0 with the original Demo Disk.
- As far as i know there is no VERxx Constant in this build.
- Delphi Prism uses VER30 because the compiler is Remobjects Oxygene. Also Turbo Pascal 3 uses VER30, but it the Prism language has much changed since Turbo Pascal.