Yesterday Embarcadero released the C++ 64-bit compiler, the first compiler from the company based on the LLVM infrastructure (soon to be adopted also by Delphi for its mobile support). For information on the new C++ Builder, which is included as an update for C++Builder XE3 and RAD Studio XE3 customers, you can refer to the product home page at (and remember there are many active offers until the end of the year).

Udpate 1

Along with the C++ update, yesterday we shipped the Update 1 for Delphi XE3. I know this could have been released earlier, but timing it along with the C++ update was much easier... and the good news is that with the extra time allowed the number of bugs fixed grew considerably.

Here you can find the Delphi Update 1 with standard install, while here is the ISO of Delphi/RAD Studio with Update 1 for registered users. Notice that given there have been many changes to the development environment and libraries, this is a full uninstall/install cycle.

Bugs Fixed

As mentioned this Update fixes a significant number of bugs, including a few annoying regressions (that is, bugs breaking the correct behavior of previous versions) in the database-related side of the product. As I blogged earlier, we fixed quite a few DataSnap issues related with concurrency. Some of the bugs reported by customers on Quality Central (QC) are listed at the page (thanks to Tim Del Chiaro). This list is in a shorter format than other times, because it would have been a huge HTML page.

Again, the real internal list is much longer, but I want to point out to a few significant issues fixed in various areas:

  • DataSnap: Issues regenerating datasnap client classes,  DataSnap Dataset with Params gives AccessViolation (that is, AV at Designe Time when trying to get params from DataSnap server);
  • ClientDataSetXMLTransformProvider fails with data package mismatch error,  TClientDataSet silently failing to load all records from database query,  "Out of memory" when unfiltering a detail dataset in MidasLib;
  • BDE (ugh!): TQuery.CachedUpdates does not work on BDE,  Blob field does not work on BDE,  Lookup field does not work on BDE;
  • FireMonkeyDesign time Font propety in TMemo is ignored/lost at runtime,  TMemo Scroll Bar Erratic in FM2 when wordwrap is on,  [MacOS] Setting Cursor to crNone crashes application,  MessageDlg is not modal in sub forms.  

There is much more (see the list linked above), and again the internal list of fixed bugs is significantly longer than the list of those reported by users in QC. This doesn't mean we are done bug fixing. Keep reporting bugs on QC, poke us for the most significant issues (like those preventing you to move existing code to newer versions of Delphi), and even if I know the backlog is significant, we'll be doing our best to improve support and bug fixing (and aslo try to reduce bugs in the first place, of course).

If you've been waiting for an update to Delphi XE3 to upgrade and migrate your code, this is a great time: until the end of the year you have free tools offered (TMS, MIDA, styles, HTML5Builder), upgrades from older versions, discount on the Ultimate edition, and you can buy at the current price. Don't wait, place your XE3 order today!