CLion 2017.1 EAP: Disassembly view, Catch support and MSVC changes

Hi,

Last week we announced experimental support for the Visual C++ compiler in CLion. This week brings more exciting features, like disassembly view for debugger and Catch test framework support! A new EAP build, 171.3691.13, is now available for download. And you will get a notification about a patch-update in case you are using the previous EAP build (171.3566.4).


Download CLion 2017.1 EAP

In this EAP:

Disassembly view for debugger

This build brings disassembly view for debugger. You can now step into disassembly code, when the sources are not available. The assembly code will be highlighted correctly and you can then step though it to investigate the problem:
disasm
As work on this feature is not yet finished, there are a couple of limitations and known issues:

  • It now works only with GDB (for LLDB support, please, follow CPP-8908)
  • Setting a breakpoint in the assembly code in not possible (CPP-8910)
  • Run to cursor (CPP-8945) and evaluate expression (CPP-8952) are not yet there

Try the disassembly view on your project and let us know what you think in our tracker.

Catch

This EAP brings Catch support to CLion. Catch is a cross-platform test framework for C++ which you might consider as an alternative to Google Test, CppUnit and others due to following reasons:

  • To start you just need to include catch.hpp and that’s it! No external dependencies are used and it’s just a single header
  • Write test cases as, self-registering, functions or methods
  • Cases can be organized into sections, BDD-style Given-When-Then sections can be used

And now there is one more reason – CLion’s Catch support!
catch
It includes:

  • Built-in test runner to inspect the results with ease: check the progress bar, test status and test duration, the whole test output stream, and more
  • Catch run/debug configurations in CLion
  • Completion for tags in the configuration settings

CLion support Catch v1.7.2 and higher. To learn more about Catch itself and its support in CLion read this blog post by Phil Nash, the original author of Catch and developer advocate here at JetBrains.

MSVC fixes

The previous EAP build introduced experimental support for the Visual C++ compiler in CLion. It’s now possible to build projects with MSVC/CMake/NMake toolchains on Windows. A few fixes and usability changes were added this time:

  • If you were using VM option to turn on the MSVC support, please, revert it back (remove custom VM options file from configs) and use Registry: in Find Action dialog (Shift+Ctrl+A on Linux/Windows, ⇧⌘A on macOS) type Registry; open Registry and type msvc:
    registry_on_msvc
  • VS 2013 is now also supported (in addition to VS 2015 and VS 2017)
  • CLion now auto-detects the Visual Studio versions installed on the machine
  • Navigation through compiler errors was introduced (links to the code were added, as well as navigation to the previous/next error):
    messages
  • CMake settings for MSVC were updated with some hints for the possible values:
    settings_hints

That’s it! The full release notes are available here.


Download CLion 2017.1 EAP

The CLion Team
JetBrains
The Drive to Develop

This entry was posted in Announcement, Early Access Preview and tagged , , , , . Bookmark the permalink.

15 Responses to CLion 2017.1 EAP: Disassembly view, Catch support and MSVC changes

  1. Olof says:

    Is it possible to see the assembly even when the source code is present?

    I often want to see what got generated for code where performance matters.

    • Eldar Abusalimov says:

      There’re such requests in our tracker:
      https://youtrack.jetbrains.com/issue/CPP-9091 For showing disassembly of an arbitrary frame/function while debugging
      https://youtrack.jetbrains.com/issue/CPP-1742 Show disassembly of a function without using a debugger, much like the Compiler Explorer (godbolt.org) does

      Chances are, the first one (CPP-9091) will be included in the upcoming release or one of its minor releases, although I can’t guarantee that at this point. The second one (CPP-1742) is more general one and requires thorough preparation, so it won’t be implemented in 2017.1, alas.

  2. Sebastian says:

    @Anastasia,
    thanks for taking 2013 into consideration and adding support for it so quickly. Thats great news. Also assembly view will be very interesting.

    An unrelated question. Could you take a look at this issue, it very much looks like a low-hanging-fruit to me, that should be easy to fix. Maybe you can consider it for the 2017.1 release? Here is the link: https://youtrack.jetbrains.com/issue/CPP-6891

    Cheers
    Sebastian

    • Anastasia Kazakova says:

      Thanks, we’ll check. But most likely we won’t be able to finish before 2017.1, but maybe some later updates, we’ll see.

  3. Awesome, I will be trying out the MSVC 2015 support tomorrow morning. Cannot wait for this version, thanks for all of the hard work!

  4. Sebastian says:

    I just installed this EAP and noticed that the fonts in all editors are really tiny. Using Ubuntu 16.04 on this computer here.

    • Anastasia Kazakova says:

      Yes, this is more or less by design. We’ll provide some additional information about JDK changes later today.

  5. Alexander Zaitsev says:

    Hello.

    Can you tell me please, is there any chance o not, that in the future in Clion will be available good wrappers for Qt debugging?

  6. John says:

    Curious if there is an estimated release date for 2017.1? Mostly just looking for weeks vs months for planning purposes.

  7. Sebastian says:

    I am trying the latest EAP with MSVC 2013 support. I just noticed that the generator that is being used is the following: -G "CodeBlocks - NMake Makefiles", I was expecting to see -G "Visual Studio 12 2013". Is that intended?

Leave a Reply

Your email address will not be published. Required fields are marked *