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) - -
  1. 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.
  2. 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).
  3. This conditional define is shared with C++Builder 5
  4. C++Builder 3.0 used VER110 (it had its own version of the Delphi compiler included).
  5. They are not defined in Turbo Pascal 1 & 2.
  6. 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.
  7. 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.
  8. As far as i know there is no VERxx Constant in this build.
  9. 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.

Links