Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
News

Coming in Florence: Clang-20 based C++Builder compiler introduces C++23 support

cbuilder13clang20

This blog post is based on a pre-release version of the RAD Studio software. No feature is committed until the product’s GA release.

We have already covered some of the new Delphi language features coming in RAD Studio 13 Florence and some of the WebStencils and WebBroker extensions. Another area that’s going to see a very significant improvement is the C++Builder Modern Win64 compiler. This compiler, first shipped in 12.1, was the result of a significant modernization effort, and by the time we completed the project Clang had already moved considerably.

For the RAD Studio Florence 13.0 release, we are further updating the Modern Win64 C++ compiler from Clang 15 (the version shipped in 12.x) to Clang version 20, which is the most recently officially released version of Clang at the time I’m writing this blog post. 

This is not just an internal upgrade. The new Clang-based compiler offers robust support for the C++23 language standard, while libc++ (the runtime library we use) offers a large number of C++ 23 features, with enhancements planned for future C++Builder releases to close the remaining gaps. You can read more about the current clang and libc++ support for specific C++ 23 features at:

As part of our modernization efforts for C++, new C++ projects now default to C++23 (when using the Win64 Modern platform). Developers looking to leverage specific C++ features no longer available in C++23, can easily switch to an older version in the C++ compiler settings menu. We plan to add more C++23 features as the Clang compiler and RTL we use mature.

rad13 cpp23

While moving to Clang20, this release updates many of the other elements of the Modern Win64 C++ toolchain and some general core RAD Studio features alongside. 

  • The toolchain has been upgraded from LLVM v15 to LLVM v20. This update supports recent C++ standards and compiler optimizations.
  • New C++ Standard Option: bcc64x now defaults to C++23, but users can choose to target C++20 or C++17 as needed.
  • Shared runtime libraries (e.g., libc++.dll) are now suffixed with the BDS version number (e.g., libc++-370.dll). This prevents runtime conflicts when multiple versions of RAD Studio are installed.
  • Numerous issues and inconsistencies present in LLVM v15 and previous toolchain versions have been addressed in this release.

We are also adopting version 20 of LLDB and making other changes to our core tools. Stay tuned for more information by the time we officially launch the new release. Embarcadero is keeping a significant focus on C++Builder and we hope C++ developers using RAD Studio will appreciate the result.

This blog post is based on a pre-release version of the RAD Studio software. No feature is committed until the product’s GA release.

See What's New in RAD Studio 13 Florence The AI Codecamp: Learn, Code, Create

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.
Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

About author

Marco is one of the RAD Studio Product Managers, focused on Delphi. He's the best selling author of over 20 books on Delphi.

10 Comments

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES