CLion 2020.1 Reaches Beta

CLion 2020.1 goes Beta! To install build 201.6668.10, 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.

DOWNLOAD CLION 2020.1 BETA

Find the main highlights below.

Code completion

In the previous EAP build, completion that’s based only on Clangd became the default. This behavior is controlled by the Code Completion setting in Settings/Preferences | Languages & Frameworks | C/C++ | Clangd.

To improve your user experience with completion, we’re introducing a few fixes in this Beta:

  • Completion suggestions in the context of a template parameter list are now more accurate (the typedef keyword is no longer on top, CPP-19085).
  • Completion in type aliases is more accurate as well (thanks to removing constructors from the using context, CPP-19171).
  • CLion can now complete folders that are symlinks.
  • Completion for int has been improved (CPP-19520).

Other fixes

  • For compilation database projects, when CLion collects compiler information it now filters out some flags that do not affect the information requested. -MD and -MMD flags are good examples as they generate dependency files and might clutter the project directories with unnecessary compiler-file*.d.
  • For Python, the notification ‘Configure Python interpreter’ will now open a settings window (CPP-19536).

More fixes from the IntelliJ Platform have also made their way into this Beta. The full release notes are available here.

Your CLion team
JetBrains
The Drive to Develop

Posted in Announcement, Early Access Preview | Tagged , , | 8 Comments

CLion 2020.1 EAP: Macros and Variables in Configurations, Input Redirection, and More

A new CLion 2020.1 EAP build is now available for download!

You can download the build (201.6487.17) from our website, via the Toolbox App, or as a snap package (for Ubuntu), and you can install it side by side with the stable release build.

DOWNLOAD CLION 2020.1 EAP

Continue reading

Posted in Early Access Preview | Tagged , , , , | 31 Comments

CLion 2019.3.5 bug-fix update

A new bug-fix update, CLion 2019.3.5, is now available for download! You can get build 193.6911.21 from our website, via the Toolbox App, or as a snap package (for Ubuntu). A patch update will be available shortly.

DOWNLOAD CLION

Here are the main highlights of the update:

  • The IDE UI freeze while debugging has been fixed (CPP-18278).
  • Formatter improvements:
    • Fixed the incorrect formatting of the macros used inside the macro argument (CPP-18644).
    • Fixed the incorrect formatting of the strings concatenation used inside macro calls (CPP-18628).
  • VCS: commit actions are no longer disabled on a commit of a deleted file (IDEA-225882).
  • More fixes from the IntelliJ Platform.

Full release notes are available here.

Additionally, the CLion 2020.1 EAP is now up and running. It brings CUDA enhancements, support for Clang-cl and IAR compilers, the ability to debug customer targets, Data Flow Analysis rewritten on Clang, a PlatformIO plugin, and more. For more details please see this page.

Your CLion team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 7 Comments

C++ Annotated: November 2019 – February 2020

Hi,

We’re happy to present our new edition of C++ Annotated, which includes our findings on C++ conferences, language evolution, various tools releases, learning materials, and community announcements. We hope you find this a useful and interesting read.

C++ Annotated

Today:

Continue reading

Posted in Uncategorized | Tagged , , | 1 Comment

CLion 2020.1 EAP: IAR Toolchain, PlatformIO Plugin, and Updates to Change Signature Refactoring

A new CLion 2020.1 EAP build is now available for download!

You can download the build (201.6251.14) from our website, via the Toolbox App or as a snap package (for Ubuntu) and install it side by side with the stable release build.

DOWNLOAD CLION 2020.1 EAP

Continue reading

Posted in Early Access Preview | Tagged , , , , | 13 Comments

Tips & Tricks: Develop OpenJDK in CLion with Pleasure

You’ve probably heard that dogfooding at JetBrains is a mission-critical part of our development process. You may also know that we build our own JetBrains Runtime to provide a runtime environment for running IntelliJ-based products. It’s based on OpenJDK, and so, obviously, it’s a great opportunity for dogfooding in CLion.

Besides, there is a huge community contributing to OpenJDK that often asks about tips & tricks for dealing with the native part of the OpenJDK project in CLion. There are already several tried and tested collections of tips & tricks from the community leads. In this blog post, we’d like to share our own tips & tricks from our own experience of developing OpenJDK in CLion.

Continue reading

Posted in Tips'n'Tricks | Tagged , , | Leave a comment

CLion 2020.1 EAP: better CUDA support, Toolchains and Formatter improvements

A new CLion 2020.1 EAP build is now available for download!

You can download the build (201.6073.20) from our website, via the Toolbox App or as a snap package (for Ubuntu) and install it side by side with a stable release build.

DOWNLOAD CLION 2020.1 EAP

Let’s take a look at the highlights!

  • CLion index now works more accurately with symlinks (CPP-17333).
  • A fix for the Cannot run program error happening on CMake target launch from CLion (CPP-19236).
  • CUDA support was added earlier in this 2020.1 EAP, and in this build it’s got several improvements:
    • The issue with the alpaka project, when CLion fails to collect compiler info, and so red code is present, was finally fixed.
    • Generate options are now available in CUDA files.
    • A false positive on the OpenCV code was fixed (CPP-18058).
    • CLion now correctly parses the compile_commands.json file generated for CUDA projects (CPP-18926).
  • Changing the return type in a trailing return type function no longer breaks the code (CPP-17529).
  • Toolchains:
    • Recently we’ve added clang-cl support on Windows. Now CLion takes bitness (x64 vs x86_64) into account, so that the selected clang-cl compiler matches the Visual Studio toolchain selected.
  • Formatter:
    • #pragma region and #pragma endregion can be used in CLion for code folding:
      Region folding
    • In using and namespace, the equal sign is getting surrounding spaces if configured in settings.
    • CLion now doesn’t apply an incorrect indentation to the lines after the macro definition (CPP-18574).
  • We are currently unifying all remote configurations to use the common SSH Configurations UI:
    SSH Configuration

This affects all IntelliJ-based IDEs, and CLion is no exception. Wherever a new SSH configuration originated from (be it remote toolchains settings or Remote GDB server configurations), it’s now located in Settings/Preferences | Tools | SSH Configurations.

Besides, check out the update on the Commit tool window & Commit dialog.

Additionally, we recently shared an update on Makefile projects support in CLion. Check out how you can help us test our prototype on a variety of projects, or request a private build from us to give it a try on your own!

Check out the full release notes by the link.

DOWNLOAD CLION 2020.1 EAP

Your CLion team
JetBrains
The Drive to Develop

Posted in Early Access Preview | Tagged , , , | 6 Comments

CLion 2020.1 EAP: Improvements to Code Completion, the Formatter, and More

A new CLion 2020.1 EAP build is now available for download!

You can download the build (201.5616.31) from our website, via the Toolbox App or as a snap package (for Ubuntu) and install it side by side with the stable release build.

DOWNLOAD CLION 2020.1 EAP

Let’s take a look at the highlights!

Code completion

Clangd-based code completion has been improved in several ways:

  • The rules for showing private and protected methods in code completion have been updated. Now CLion:

    • Doesn’t show private and protected methods for the first completion call, though it does show them for the second one
    • Shows private and protected methods for the first completion call if there are no public methods
  • We’ve also fixed an issue with non-existent constructors being suggested when completing type names (CPP-18970).

The formatter and naming

In the naming settings, CLion now has separate settings for struct and class fields:
naming
CLion currently has two formatters – a built-in one and ClangFormat. You can easily switch to ClangFormat if you have a .clang-format config file. And even if you don’t, you can still switch, and CLion will offer to create the config file for you. Now, when you first open a project with a .clang-format config file in the project root, CLion will detect it and switch to ClangFormat for you automatically. Note that in this case CLion enables the Settings/Preferences | Editor | Code Style | Enable ClangFormat option, which is applied either to the individual project (if code style scheme per project is selected) or globally (if code style scheme per IDE is selected).

There are also various performance improvements and fixes for regressions.

Additionally, we recently shared an update on Makefile projects support in CLion. Check out how you can help us test our prototype on a variety of projects or request a private build from us to give it a try on your own!

Check the full release notes here.

DOWNLOAD CLION 2020.1 EAP

Your CLion team
JetBrains
The Drive to Develop

Posted in Early Access Preview | Tagged , , | 12 Comments

Dealing with Makefile Projects in CLion: Status Update

What request in our tracker has more than 1000 votes, 370 comments, and 800 watchers? You guessed it: Support Makefile projects. This has been a story of interesting findings, semi-automatic workarounds, and a long battle that we still plan to win! If you’d like to get the latest news on this topic, please read on.

Continue reading

Posted in Backstage, Tips'n'Tricks | Tagged , , | 39 Comments

CLion 2019.3.4 Bug-fix Update

A new bug-fix update, CLion 2019.3.4, is now available for download! You can get build 193.6494.38 from our website, via the Toolbox App, or as a snap package (for Ubuntu). A patch update will be available shortly.

DOWNLOAD CLION

Here are the main highlights of the update:

  • CMake CUDA targets are now launched from CLion using the correct binary (CPP-10292). If you are interested in more sophisticated CUDA support, please check out the 2020.1 EAP build.
  • Google Test support:
    • False errors on Google Test v1.8.1 have been fixed (an error message was produced for INSTANTIATE_TEST_SUITE_P, see CPP-16301).
    • False positive inspection warnings for new MOCK_METHOD macro from Google Test v1.10.0 (CPP-18182).
  • Formatter improvements:
    • Reformat Code no longer breaks indentation in an enum when using a comment line (CPP-1836).
  • Several Clangd crashes were addressed.

The full release notes are available here.

The CLion 2020.1 EAP is now up and running. The first builds bring CUDA enhancements, Clang-cl support, the ability to debug customer targets, Data Flow Analysis rewritten on Clang, and much more. For more details please see this page.

Your CLion team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , , , | 4 Comments