CLion 2020.2 Goes Beta: CMake PCH, Opening Project from a Generated Folder, and Performance Improvements
CLion 2020.2 has reached Beta! To install build 202.6397.12, download it from the website, update from our Toolbox App, get it through a snap package (if you are using Ubuntu), or use a patch update.
CMake Precompiled Headers
CLion has supported precompiled headers for a while, but this didn’t cover all the cases. In this EAP build, we’re adding support for the MSVC Force Include option (CPP-21063) and for CMake 3.16 PCH. In the latter case, code navigation and highlighting for symbols from the precompiled headers added via the
INTERFACE_PRECOMPILE_HEADERS properties of a CMake target now works in CLion.
Please note there are some limitations affecting Cygwin/WSL/Remote toolchains (CPP-21192).
Open project from CMake generated folder
When a CMake folder has already been generated for your project, CLion can now open the project without regenerating the folder. This should be a great time-saver. This feature previously worked only for the Makefile generator, but now it is supported for all generators (like Ninja, or others).
You can set Clang-Tidy configuration files to take precedence over the IDE settings. To do so, go to Settings/Preferences | Editor | Inspections | C/C++ | General | Clang-Tidy and select the Prefer .clang-tidy files over IDE settings option. We have slightly reworked CLion’s behavior in this case:
- CLion tracks all .clang-tidy files in the project directory.
- When analyzing the source file:
- If there’s a reachable .clang-tidy file (located in the current directory or in one of the parent directories), CLion uses the settings from that file.
- Otherwise, CLion relies on its own settings.
- Fix for the UI freeze during the reformat code operation (CPP-20925).
- Fix for the UI freeze when highlighting the code in the Find Usage dialog (CPP-17472).
@ctags are now rendered correctly in the Quick Documentation popup (CPP-18485).
The full list of fixes can be found in the release notes here.
Our previous EAP builds introduced the following enhancements:
- Makefile projects support
- Doctest unit testing framework integration
- Code coverage enhancements
- Support for Git installed in WSL2
- Dangling pointer analysis
- More accurate C++20 support
Your CLion team
The Drive to Develop