CLion starts 2017.1 EAP: convert variable type to auto, zero latency typing and various fixes

Hi,

Today we are glad to announce that the first CLion 2017.1 EAP build (171.2613.3) is available for download.
Clion_2017_1EAP@2x_img
You can install it side by side with your current stable CLion version, no active subscription required.


Download CLion 2017.1 EAP

Short summary:

Upd. More C++14 support (generic lambdas, variable templates and generalized lambda captures) is also included into CLion 2017.1 EAP.

Upd2. Precompile headers and -include support is added to CLion 2017.1 EAP.
Continue reading

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

CLion 2017.1 EAP: first steps to ASM and MSVC

Hi,

A new CLion 2017.1 EAP (build 171.3566.4) is now available for download. You will get a notification about a patch-update in case you are using the previous EAP build (171.3224.8).

This build includes a lot of preliminary work for the upcoming big changes: disassembly view for debugger and Microsoft C++ compiler support. While these features are not quite ready yet, this EAP build introduces important changes. Your help at this stage is highly appreciated, so please check the build and submit any issue to our tracker.


Download CLion 2017.1 EAP

Assembly language

Starting with this build, CLion’s editor can highlight code written in assembly language:
asm_hello
The files are detected by the .s and .asm extensions (configured for you in Settings | Editor | File Types | Assembly Language). This works with a few limitations, however:

  • Only AT&T dialect is supported
  • Assembler with preprocessor is not supported

This work is the first step towards a disassembly view in debugger, which is going to come shortly to CLion EAPs.
Continue reading

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

CLion 2016.3.3 bug-fix update

Hi,

CLion 2016.3.3 bug-fix update (build 163.13906.4) is now available. You can download it from our website or install an update from the IDE if you’re using CLion 2016.3.2.

This build mostly addresses problems with debugger:

Besides, CLion now automatically detects invalid file path in fields like Working directory, etc.

For a full list of addressed issues please see the Release notes.

The CLion Team
JetBrains
The Drive to Develop

Posted in Announcement | Tagged , | 3 Comments

CLion 2017.1 EAP: Debugger fixes, IDE macros and new CMake

Hi,

New CLion 2017.1 Early Access Program build (171.3224.8) is now available for download. You will get a notification about a patch-update in case you are using previous EAP build (171.3019.8).


Download CLion 2017.1 EAP

Debugger fix for csh/tcsh shells

A problem with debugger not starting if the main shell is csh/tcsh (CPP-2919, CPP-8737, CPP-2328) was addressed in this build.

Project model and CMake

This build brings fixes for incorrect handling of the escaped symbols. These problems mostly affected MinGW users and led to CMake command run failures on the correct projects, unrecognized include_directories and more (CPP-3962, CPP-8726, CPP-8727). Huge overhaul was performed there and now seems all the problem are gone. Feel free to report an issue in case you find anything!

Besides, CMake 3.7 is now bundled into CLion.

Special IDE macro

While we are working hard on improving the CLion’s code parser, there are still cases which confuses CLion. For example, some preprocessor macros. We do encourage you all to report such cases to our tracker. However, in the meantime, find a workaround for such situations – special preprocessor macros to eliminate problematic definitions and to use some dummy definitions instead.

Find the following macros available now:

  • General macros: __JETBRAINS_IDE__
  • Per-ide variable: in CLion it’s __CLION_IDE__ , in AppCode – __APPCODE_IDE__ , in Android Studio – __STUDIO_IDE__
    macros_ide

The values correspond to the current IDE’s version, for example:

The macros are undefined when you build/run your code, of course. They only affect the way your IDE parses the code.

Note, these macros are not available in completion for now (CPP-50) and their values are not shown in Quick Documentation (CPP-8576).

By the way, if you are looking for a way to check if the CMake script is called from CLion, there is an environment variable for this – CLION_IDE. Read more.

The full release notes are available here.

The CLion Team
JetBrains
The Drive to Develop

Posted in Announcement, Early Access Preview | Tagged , , , | Leave a comment

CLion 2017.1 EAP: precompiled headers and -include

Hi,

CLion 2017.1 EAP builds were mainly focused on C++14 features support and various code analysis improvements, as well as zero latency typing mode (that seems to improve the editor performance in many cases). Today we are happy to announce new EAP build, 171.3019.8.


Download CLion 2017.1 EAP

C++14: Variable templates and generalized lambda captures

We are moving forward with C++14 support in CLion and today we are glad to announce that variable templates (CPP-6419) and generalized lambda captures (CPP-4545) are now supported in CLion. That means that the only thing left from C++14 is constexpr.

Precompiled headers and -include support

To reduce compilation time and keep the code well-structured, especially on a large-scale code bases, precompiled headers and -include compiler option can be used. They guide the compiler to reuse the information about expensive includes (like many header files included everywhere).
In this case the IDE has to understand where to locate the precompiled headers and headers included via -include option, in order to correctly resolve symbols from such files and provide correct code highlighting, code generation and navigation, refactorings, etc.
The work on this feature in CLion has started in this EAP build:
pch

Current limitations

Note, there are still some limitations while using precompiled headers and -include compiler option in CLion:

  • In case of GCC, CLion only resolves the symbols from the usual header files passed via -include option. Symbols from the precompiled headers won’t be resolved correctly now due to technical difficulties (CPP-8729). For Clang both options work.
  • Some performance degradation (~30%) is possible during the first project opening and initial indexing, so the work on the feature will continue in the upcoming EAP builds.

Other fixes

This build also addresses a problem with TArray widely used in Unreal Engine 4 projects – no more incorrect ‘not a valid range type’ warning there.

The full release notes are available here.

The CLion Team
JetBrains
The Drive to Develop

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

CLion 2017.1 EAP: more C++14 support

Hi,

Last week CLion 2017.1 Early Access Program started with a new make auto intention, auto return type support, zero latency typing mode and many important improvements. This week a new EAP build (172.2822.8) is available. In case you use the previous EAP build, you should get a notification in the IDE about a patch update shortly.


Download CLion 2017.1 EAP

Generic lambdas

Modern C++ standards support is one of our top-priority task for this year. We keep working on C++14, and while first EAP brought auto return type support, this build comes with the generic lambdas support. This includes correct type inference and corresponding code analysis checks:
generic_lambda_type

More C++14 features are coming to CLion in the next EAP builds. You can check what’s left in our webhelp.

Decltype cases

This EAP also addresses several cases with decltype when the code was not resolved correctly:

  • decltype(auto) used in trailing return (CPP-6075)
  • Constructors using decltype (CPP-8195)

Other fixes

Besides, this build includes a couple of other fixes for incorrect code analysis or refactoring:

  • Fix for the incorrect Explicit type required here warning when declaring a friend class (CPP-2637)
  • The refactoring of the ambiguous calls is disabled to avoid problems (CLion shows Function foo is ambiguously referenced warning in this case)

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


Download CLion 2017.1 EAP

The CLion Team
JetBrains
The Drive to Develop

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

C++ annotated: Sep – Dec 2016

Today we are happy to share our next compilation of C++ news with you.

Subscribe to the regular C++ Annotated and be the first to get the next edition!

C++ Annotated: September – December 2016

In this edition:

Continue reading

Posted in Uncategorized | Tagged , | 1 Comment

CLion 2016.3.2 update: CMake changes and Project Templates

Hi,

CLion 2016.3.2 (build 163.10154.43), the second bug-fix update for the recently released major version is now available! If you still haven’t got a chance to try v2016.3, check our website for What’s new and download the build.


Download CLion 2016.3.2

Find a short summary of the important fixes and changes:

  • Ability to create additional CMake configurations. Read more.
  • CMake output console with error highlighting, links to corresponding CMake files, and navigation to next/prev errors. Read more.
  • CMake generation folders excluded by default. Read more.
  • Project Templates for C and C++ executable and libraries. Read more.
  • GCC6 support. Read more.

Check the full release notes by the link.

Many more are coming after the holiday season. Stay tuned!

Happy Holidays!
Your CLion Team

Posted in Announcement | Tagged | 10 Comments

CLion 2016.3.1 update is available

CLion 2016.3.1, the first bug-fix update for the recently released major version is now available!

If you’re using CLion 2016.3, a patch-update should be available. If you’re using an earlier version, give CLion 2016.3 and its new features a try and download it for a free 30 day evaluation.


Download CLion 2016.3.1

Find below a short summary of the important fixes and changes:

Check the full release notes by the link.

Your CLion Team

JetBrains
The Drive to Develop

Posted in Announcement | Tagged , , | 9 Comments

CLion 2016.3.2 EAP: CMake configurations, project templates and GCC6

Hi everyone,

CLion 2016.3.1 update was just announced, but we keep moving forward and today we roll out CLion 2016.3.2 EAP build (163.10154.14).

The highlights include:


Download CLion 2016.3.2 EAP

Continue reading

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