Every RAD Studio release, we focus on what we call QPS: Quality, Performance, Stability. Recent releases of C++Builder have included:
- 10.2.0: Lots of work on our linker; improved codegen and optimizations; and debugging improvements (minimizing debug info size, better debugging)
- 10.2.1: CodeGuard for Windows 8.1 and 10; a group of exception handling, standards, and debugging improvements
- 10.2.2: further linker quality work; a variety of fixes around exception handling, templates and expert/import behaviour, and more.
This isn’t an exhaustive list, just some notable improvements. (One other is to do with Boost, but there are more.) One notable thing is how compatible C++Builder is: we find that we and you our users are typically finding it much easier than in the past to add in third party libraries to your projects, add C++Builder compatibility to third-party source code even when it’s been written to be compiler-specific, such as MSVC-specific, etc. This is very good.
C++ Quality in 10.2.3
In 10.2.3, our quality improvements have largely focused on two areas:
- Compiler quality: fixes for codegen, RTL, debugging
- Code completion in the IDE
Let’s look at both.
Compiler Quality
We have addressed a number of issues, including debugging issues, the most notable of which is with large stack variables (stack allocations larger than one page, or 4KB); deriving exceptions from System::Exception; integrating with the memory manager; and extended (Delphi-style) RTTI generation.
Code Completion
Code completion is an important IDE feature. C++Builder has had C++ code completion for many years, but sometimes it did not the quality we aim for. We have significant plans for this feature in a future release, but in the meantime we can and have worked to greatly improve the experience you have with our existing implementation.
There were a number of problems we saw in code completion. These ranged from the inconvenient, such as invoking completion and the results list being empty, to the more serious, such as completion bringing down the IDE. There were a number of problems all collecting together to cause this behaviour, and every one we have identified is fixed.
As of today, we now see:
- Code completion results returned more often, more accurately, and often faster
- Inconsistencies such as completion showing sometimes, and not other times, resolved
- IDE stability issues resolved
If you rely on IDE tooling such as code completion, using C++Builder 10.2.3 will give significant productivity improvements. We strongly recommend updating.