text: Great news today as CLion starts an Early Access Program for version 2016.2! Many things are planned, and some are already in there. Download the build (162.232.8) and check them out right now!
  This build addresses Complete Statement and CMake improvements, introduces Doxygen support, VCS changes and custom JDK on Windows. See more details below.
  Complete Statement
  Together with code completion and code generation, this feature helps you develop at the speed of thought. Invoked with
  Ctrl+Shift+Enter on Linux/Windows or
  ⇧⌘⏎ on OS X, it helps you complete many code constructs to syntactically correct ones. The simplest sample is a missing semicolon, but it’s actually much more!
  With Complete Statement, CLion inserts parentheses, braces, semicolons, quotes, etc. for you where necessary, and then moves the caret in position where you can start typing the next statement automatically. Time savings are guaranteed.
  CMake changes
  Starting from this build user symbols in CMake (like functions or macros) are available in code completion, as well as in the go to declaration/definition navigation actions. Quick definition pop-up is now also able to show definitions for user symbols. To invoke it, simply press
  Shift+Ctrl+I on Linux/Windows, or
  ⌘Y on OS X. The definition for the symbol at caret will be displayed:
  Besides, Rename refactoring now works for user symbols in CMake as well:
  Doxygen support
  Starting from this EAP build CLion makes it easier to keep your code properly documented with support for the widely-known documentation format, Doxygen. You can now view the documentation parsed from your Doxygen-styled comments in the Quick Documentation pop-up:
  Besides, CLion will help you rename function parameters, by updating Doxygen comments automatically. It also provides code completion for a set of Doxygen commands and parameters names, and even code generation for the function documentation in Doxygen style. Read our blog post to learn more.
  Swift plugin
  Have you already tried Swift plugin in CLion? Since we’re seeing growing interest in the community, we continue putting our efforts into it. Thanks to our AppCode team, Swift 2.2 language support comes today to both AppCode 2016.1.3 EAP and CLion’s Swift plugin. You can check the details in the corresponding post in the AppCode blog or see the list of fixed child issues.
  VCS improvements
  To make navigation through the VCS log easier, we’ve added tooltips with target commit information for arrows:
  If you’ve created several new files and didn’t add them to the version control, the commit dialog will show these files so you won’t forget to add them:
  Several improvements were made for patches:
  - You can apply patch from the clipboard (the IDE will offer to apply the patch when it obtains focus). Alternatively, drag a file into the IDE.
  - If a file has been moved or renamed since a patch was created for it, the IDE will try to figure that out or let you manually choose the file to apply the patch to
  Other improvements
  In debugger tool window, the Watches and Variables modes are now merged so you don’t need to switch between them. If you still prefer the old style, a new button is available in the watches toolbar to switch between the modes (new mode is on by default):
  Following our custom JRE on Linux and OS X, our Windows builds are using a customized build of JDK now, which mostly includes font-rendering and focus fixes. (Just in case, build with the Oracle JRE is still available for the download.)
  IdeaVim upd.
  In case you’d like to use IdeaVim plugin with CLion 2016.2 EAP build, please, note that IdeaVim 0.44 is not compatible with 2016.2 EAP – install IdeaVim EAP instead. The instruction on how to obtain it can be found here.
  That’s it! Download the build, try it right now and let us know what you think. Full release notes are available by the link.
  Your CLion Team
  Oh no! It broke the IdeaVim plugin.
  We’ll check, thanks for letting us know.
  Could you please try the plugin EAP from here:
  I’d love to.
  I can’t seem to find a download link though. My work box Is blocked from doing downloads so I need to send a link to a .zip or .jar to my IT department. So things as installing plugins through the GUI doesn’t work.
  Please, check the zip here:
  In general EAP builds are living here:. See the ‘Publish EAP build’ configuration, the ‘Artifacts’ drop-down menu
  That solved the problem.
  Great work!
  Glad to know!
  Complete statement and CMake improvement are nice !
  Personally, what I’m looking for this build is bug correction (in particular for auto-includes in C, who sometimes are strange with “printf.h” included, cf CPP-6038, or zconf.h which is practically always included instead of unistd.h :/ ) and namespace better support in code generation (I saw that it’s WIP) more than new features.
  The situation is going better and better with each release, continue like that!
  Thanks for your support. We plan many bug fixes as well new features, so please stay tuned.
  Doxygen support, finally! Amazing !
  Was so excited to see that a fix for CPP-4813 was in this release. I was hoping that the endless stream of false positives at every smart pointer call site would go.
  Sadly, that error is now replaced by another false positive (( This time it’s a “Applying a -> operator to MyAutopointerType instead of a pointer” – what does this error mean? Is it possible to turn it off? (I never have much luck matching false errors in the code to the list in the inspections settings)
  Many thanks,
  Marcus.
  If I’m not mistaken it should be Type checks | Incompatible pointers. However, could you please submit a code sample to us, if not yet? We’d better fix this one as well.
  Thanks Anastasia, when I get some time I’ll try to isolate this and file some bug reports (there are a couple of other new parser problems in here too around varargs function selection)
  I tried CLion, really liked it (apart from some text navigation issues on OS X, like alt+up/down not working as expected), but missing MSVC support is a dealbreaker. Clion has the potential to be truly the best cross platform IDE but that will not happen until you support microsoft toolchain.
  Since we have ReSharper C++ (that is an extension for VS) MSVC is not our top-priority task, however it is in the longer list –.
  When looking for cross platform IDE the presence of another IDE plugin does not help in any way, so I don’t really understand this argument.
  I hope you’ll reconsider this.
  CLion main focus is clang and GCC for now. Also Intel compiler is possible. MSVC is also used in cross-platform cases of course, but not that often we believe (at least as we saw from our research). Also there are some technical difficulties with MSVC especially, that will require additional work. So it’s postponed because the lack of the resources for now.
  Doesn’t Intel compiler on Windows use same interface as MSVC? What would make it easier to support?
  I’m not sure where you did your research, but personally I don’t think I’ve ever seen a company using mingw on windows for anything serious (apart from maybe building some libraries that can not be built with MSVC)
  Unfortunately, Intel and MSVC differs greatly in the part about getting compiler predefined macros. Intel has the same interface (command support) like GCC or Clang, while MSVC doesn’t support this at all. That’s why it’s not that easy.
  Were these companies doing cross-platform development or were these Windows-only projects based on the Windows environment?
  They (jetbrains) are in partnership with Microsoft, that’s why they won’t release a direct competitor to Visual C++ IDE.
  Hm, that’s an interesting suggestion, but why do we then do Rider for example?
  @Anastasia Kazakova
  This is pretty obvious: .Net is “burning platform”(c) so Microsoft would be happy if someone will build tools to popularize it.
  This is not the case with MSVC, that is the most popular C++ IDE and toolchain for Windows.
  That is why we will not get C++ support in Rider, isn’t it?
  We do consider adding MSVC compiler support, still it requires an additional resources from the team, since it’s not that obvious right now how to support it in the current architecture. And because we have ReSharper C++, that’s not one top-priority task for now. So the reasons for not having it for now are fully internal.
  My company is waiting for remote debugging before switching to CLION, it’s an awesome IDE.
  Is there any release plan for remote debugging with GDB / gdbserver ?
  Great work.
  We plan to implement attach to remote process in 2016.2, however can’t promise you this for sure, since it’s only the preliminary plan.
  IdeaVim! Oh no!
  Tried building and running snapshot version of plugin, still failed.
  Thanks for the info. We are on it currently.
  Could you please file a bug here: with the description of a problem. We can’t reproduce it unfortunately.
  Are you using IdeaVim EAP build? ee the instructions on how to install a EAP build in the Get an Early Access section
  A.K.,
  Using EAP for plugin and problem still persists.
  Please, submit here: with some description how it looks like. Logs can be useful as well.
  Are you planing to fix CPP-5205 in 2016.2 by a chance?
  We are considering this and currently investigating how to implement it. However, can’t say for sure, since it may affect the performance greatly. So we are looking for the optimal solution.
  Great, at least you are looking at it
  It is really a show stopper with some libraries, such as juce.
  Yes, we know it’s the main source of the problems for JUCE and Clang as well. We are on it. But without any estimation for now.
  Wondering when will CPP-5201 being fixed.
  Thanks for reminding us! We’ll check if it’s still actual or fixed already. Follow the issue to get the updates.
  This issue has prevented me from using newer version of CLion for about half year. I’m still using CLion 1.1, which don’t affected by this.
  Since there were many changes in performance during that period I’ll recommend you to try the latest EAP. You can install it along with the stable 1.1 version.
  I’ve try the EAP, it still forzes. I think may be the highlighting is too slow?
  We’ll check what’s going on there. Thanks.
  Is it possible to disable inspection for? I use this function call a lot, and it distracts to see that much red in ide.
  I’m afraid it’s not possible to turn off. However, we’ll take a look at the issue. Thanks for pinging.
  Is there a way to navigate through smart pointers in debug mode? (std::shared_ptr and std::unique_ptr)
  Currently i’m on full debug mode and I can’t what the smart pointer is pointing at.
  Could you please share an example (screenshot)? With some description what do you expect. For me CLion shows the memory that is there pointed by the shared_ptr for example.
  Normal pointers to an object have a tree like structure with all it’s members and it’s values. When a smart pointer points to a object, it’s not possible to open that tree with al it’s members.
  See screenshot() with the following code:
  std::unique_ptr<System1D> s = std::unique_ptr<System1D>(new System1D()) ;
  System1D* s2 = s.get();
  That’s interesting. Where is the breakpoint in that case? Which debugger is it – LLDB or GDB? And is it the same for any type instead of System1D?
  It looks different for me here with some other type used.
  I use the GDB that is bundled with clion.
  I haven’t seen it any different since I use Clion, since version 1.1 I think. also with other types.
  Could you please share the full sample project with breakpoint set? Maybe I’m just checking some different situation. Not sure, why it looks different.
  Which OS version and CLion build are you on?
  I made a simple project that has the same problem
  You can download it here:
  I have also tested it on a ubuntu machine, that had exactly the same problem
  Here is my environment:
  CLion: 2016.1.2
  MinGW: 3.21
  Cmake: 3.5.1 (the bundled version with clion)
  GDB: 7.8 (the bundled version with clion)
  GCC: 4.9.3
  I did also try it with the GDB that is in my MingW.
  There it did work correctly, CLion saw the shared_ptr as a structure with for example the _M_ptr that directly pointed to my object.
  Only this is an unsupported GDB by CLion, version 7.6.1.
  I have also compiled GDB 7.8.2, wich is supported by CLion. I have also tried this version, and it also works. So for me it is fixed, but still something strange is happening with the bundled GDB.
  We’ve recently updated the bundled GDB and introduced many fixes in the driver: Could you please check it’s working for you in that build?
  Hey,
  i have tried it in CLion 2016.2 EAP (build 162.844.13).
  It has the same problem. The watch window doesn’t show anything behind a smart pointer.
  If I use my own compiled GDB, then the problem is fixed, as is in the previous version.
  I don’t know if it is worth posting this here, but I have the exact same issue. I am using CLion2016.2 release and tried CLion2016.3 EAP without success. However, compiling the latest gdb fixes the problem for me.
  I am using Xubuntu (Ubuntu) 16.04.1 with clang 3.8. On mac os X, everything seems to work fine.
  Could you please collect logs when it doesn’t work in 2016.3 EAP using this instruction:-. This would really help to isolate the problem.
  Hi,
  I’ve been trying CLion for few weeks now and it looks very promising! I do have one major problem with it though. I am working on a large project which contains many MANY occurrences of the single quote digit separator introduced in c++14 and (AFAIK) supported by all major compilers, but not CLion’s parser which triggers errors like “missing )”, “missing ;” or even “can’t resolve …” on following lines. This could be a real deal breaker as my code is large and full of them, and so far this is enough for me not to switch to CLion at the end of the trial period… Is there any plan to support this in a near future?
  Thanks a lot!
  Thanks for the feedback. Indeed this is not supported yet –. Feel free to upvote and share your comments in the ticket. We’ll consider this in the upcoming plans.