The CLion 2023.3 Early Access Program Is Open
We recently shared our preliminary plans for v2023.3, which we plan to release at the end of November. We are now happy to announce that the CLion 2023.3 Early Access Program (EAP) starts today!
Our EAP lets the community participate in discussions devoted to our products and influence the development plans from early on. EAP builds are free to use. Give them a try, and let us know what you think about the changes!
Share your feedback in the comments below or in our issue tracker.
Build 233.6745.300 is available from our website, via the Toolbox App, or as a snap package if you are using Ubuntu.
Assembly view for files
Checking out the underlying assembly code is important when you’re trying to find a bug or optimize your code’s runtime performance. That’s why tools like Compiler Explorer are popular. Up until now, CLion was capable of showing the disassembly code only during debugging. We often receive requests to make the functionality similar to that of Compiler Explorer and make it available even without using a debugger.
The new Show Assembly action does just that! It can be found via Find Action (
Double Shift). Using the compiler settings from the currently selected resolve configuration, it compiles the code of the currently viewed C/C++ file to assembly and opens an editor with a preview showing which source code produces which assembly:
The preview has compiler arguments that can be changed so you can see how they affect the produced code.
The Show Assembly action supports the GCC, Clang, and Visual Studio C++ compilers, and it works for C and C++ source and header files (CUDA and other related languages are currently not supported).
C++ code analysis improvements
The CLion team is constantly working on increasing the accuracy of CLion’s code analysis. In this EAP, we implemented a so-called “function summaries” approach. This allowed us to distinguish different function contexts for arbitrary nested call chains, resulting in more accurate data flow analysis (DFA):
See the full list of fixes linked to this ticket.
Existing inspections in DFA now also consider fields, and there is a new inspection that warns you if not all of the fields were initialized:
Every time we add extra analysis and take additional conditions into account, we need to make sure that the overall analysis performance doesn’t degrade. This time, we’ve also implemented a bunch of optimizations. We hope to share some measurements with you later, as more DFA optimizations are coming.
Excluding test directories from indexing
To help you with code assistance, navigation, and code completion, the IDE needs to build an index of your code base symbols. For some libraries and other external code pieces, you might want to have this index, but you probably don’t need tests from there as you are unlikely to run them from your IDE.
You can now exclude directories specifically from test indexing without excluding them from the regular IDE index. To achieve that, you need to create a scope in Settings/Preferences | Appearance & Behavior | Scopes with the name “Tests” and specify the file- or folder-based pattern for it. The name of the Tests scope is configurable in Settings/Preferences | Advanced Settings | Tests Indexing Task:
If the Tests scope is in the project, only the files that are filtered by the scope will be indexed for tests. Otherwise, all files will be scanned as before.
After the Tests scope is set up, it can be used as a Project view filter, which is a convenient way to access all the test files in your project quickly:
- If you prefer a more compact IDE view, there’s a new option to hide the main toolbar in the default viewing mode. Go to View | Appearance and uncheck the Toolbar option to hide it.
- If you want to quickly revert CLion’s custom tool window layout to the default one, you can now use Window | Layouts | Default to revert your workspace’s appearance to its default state.
- Color-coding for file tabs will now help you easily distinguish between different types of files in the editor tabs and in the Project tool window. You can find the relevant settings in Settings/Preferences | Appearance & Behavior | File Colors.
By the way, if you’re on macOS, have you noticed the new CLion icon? We aligned it with the operating system’s standard style guidelines.
CLion detects QML types in a project in order to parse them and provide coding assistance based on them. But library QML types or types from users’ plugins are often located in other places. To solve this issue, we’ve introduced the new Extra QML imports setting in Settings/Preferences | Languages & Frameworks | QML, which allows the IDE to search for QML imports in specified locations and parse types from user code. The value should include the directory path to the bin folder, without the library name.
Package management is still challenging in C++, but good tools like vcpkg and Conan are available to assist. To help you better understand package dependency graphs, the vcpkg integration in CLion now displays the list of package dependencies in the description of the package in the vcpkg tool window:
When you create a new project via the New Project wizard in CLion, a main.cpp or main.c file is generated for you automatically. In some cases however, you might want to rely on a custom template for these files. Now in the CLion 2023.3 EAP, you can edit such templates in Settings/Preferences | Editor | File and Code Templates | Other:
The full release notes are available here.
Your CLion team
The Drive to Develop
Subscribe to Blog updates
Thanks, we've got you!
CLion 2023.3 Release Candidate
CLion 2023.3 is on its way, and the release candidate for v2023.3 is already available! To install CLion 2023.3 RC (build 233.11799.171), download it from the website, update via the Toolbox App, or use this snap package (for Ubuntu). You need an active subscription or a trial license to use CLi…
CLion Nova: A New Update With Various Bug Fixes
CLion Nova, a free preview of CLion with the ReSharper C++/Rider C++ language engine, was announced recently. We’re excited to see how well you liked the first build! There are about 3,700 users right now and the overall feedback is mostly positive, especially that which is related to performance an…
CLion 2023.3 Goes Beta
The Beta version of CLion Classic 2023.3 is now available with key improvements and changes that are expected in the upcoming release. Download build 233.11799.37 from our website, via the Toolbox App, or as a snap package for Ubuntu. If you are using CLion Nova, note that we do not plan to release…
CLion Nova Explodes onto the C and C++ Development Scene
TL;DR Today, we’re announcing a free early preview of CLion, which uses the ReSharper C++/Rider C++ language engine instead of the CLion "legacy" engine. The Preview build is available via our dedicated Toolbox App feed. At some point in 2024, depending on the results of the feedback coll…