Early Access Program News

CLion EAP: less bugs – more stable

Following our statistics more than 6.5K unique users are running latest CLion EAP every week and a lot of you are using it for the everyday development. That’s why we’ve got so many questions about the EAP build expiring this week, and we are not going to let you down – new build is coming today!

This EAP is mainly about the bug fixing. You can check the long list in our tracker.

Summarizing the most important changes:

  • Several fixes were introduced to enhance the performance of the editor. Check if you get the improvement and share the feedback with us.
  • Issues with arrays were fixed in this build: CLion now understands the array sizes better (CPP-1568) and thus array length checks work correctly; false ‘compound array initializer’ was fixed (CPP-347).
  • A couple of problems with type casting were addressed (CPP-1567, CPP-1571, CPP-975).
  • CPP-1195 – Parameter info working incorrectly for some cases.
  • CPP-1390 – Incorrect handling of variable’s initialization.
  • CPP-994 – Errors caused by unnamed parameters when performing Rename or Change Signature.
  • CPP-1282 – The regression came to second EAP unfortunately – Rename files in project wasn’t working. Fixed now, and sorry for the inconvenience.
  • A couple of exceptions and fatal failures were fixed in this build as well.

Latest build is available on our EAP page.

Be sure to check the quick start guide to learn how to quickly get started with CLion, as well as to download default keyboard reference for Windows/Linux and for OS X in PDF format from our site, or just find them in Help | Default Keymap Reference.

Develop with pleasure!
JetBrains CLion team

EAP
Comments below can no longer be edited.

29 Responses to CLion EAP: less bugs – more stable

  1. Avatar

    Andreas Schneider says:

    November 25, 2014

    Wow, the new Build is really awesome. It’s still a bit CPU hungry in my case, but it works very fluent now and parses much quicker than before.

    I can already use it for productive development 🙂 (Because even if there’s a bug here and there, it’s still a hell of alot better coding experience than with most of the other C++ IDEs.)

    Thanks JetBrains 🙂

    • Anastasia Kazakova

      Anastasia Kazakova says:

      November 25, 2014

      Glad to hear such a feedback! Thanks.

    • Avatar

      Mike says:

      November 26, 2014

      +1

      Way easier to put up with the small bugs and occasional interruptions on CLion EAP than work with Eclipse CDT or Qt Creator.

      Looking forward to the full release 🙂

      • Avatar

        Brendan says:

        December 5, 2014

        Or Visual Studio, for that matter. The fact that CLion is already leagues ahead of any other IDE really shows how awful the previous selection is, not to disparage CLion. It’s a fantastic product and if it shapes up to be anything like IntelliJ, it will be far and away the best C++ IDE in existence. Already is, really.

  2. Avatar

    Drew Noakes says:

    November 25, 2014

    Great news. I’m really enjoying seeing the progress of this EAP and have been looking forward to this build. Time to try it out right now… 🙂

  3. Avatar

    D Co says:

    November 25, 2014

    I downloaded the EAP build, unfortunately it does not support MinGW-64. I do not know what exactly is wrong as I set everything as expected. Any idea? The version of MinGW-64 I’m using is from here (http://mingw-w64.sourceforge.net/download.php ).

    • Anastasia Kazakova

      Anastasia Kazakova says:

      November 26, 2014

      That’s strange, it should work. Could you please attach the screenshot of Build, Execution, Deployment | Toolchain settings? You can just send it to our support address: clion-support at jetbrains.com

  4. Avatar

    Mateusz Paluszkiewicz says:

    November 25, 2014

    Awesome!
    I love all products of JetBrains <3
    Better is now. I can now write own system . Uff..

  5. Avatar

    Lex Chou says:

    November 26, 2014

    The OS X version would be useless if it doesn’t support lldb.

  6. Avatar

    Hans Salomonsson says:

    November 26, 2014

    Thanks!!! …for making CLion! It is SO much better than eclipse, code::blocks, Netbeans, KDevelop, etc. for C development. I really hope that you continue to devote to this project and make it par with intellij and pyCharm (which I use and love).

    Now, back to C coding in a nice environment, finally!

    Cheers

    • Anastasia Kazakova

      Anastasia Kazakova says:

      November 26, 2014

      Thanks for such a great feedback!

  7. Avatar

    wl.nicholas says:

    November 27, 2014

    This version is much more usable. Great job!

    Hope the stable release gets out soon.

  8. Avatar

    abcd says:

    November 27, 2014

    finally!

  9. Avatar

    Greg says:

    November 28, 2014

    Great! Thanks!
    Hope Android/NDK support is in foreseeable future 😀

  10. Avatar

    Jake says:

    November 28, 2014

    It’s actually feels less stable to me, I’m getting it in states where it gets confused about what methods are available to what objects, and the like. (I never had any trouble with the September 29th build). I haven’t been able to reliably reproduce this, tho, and exiting and re-opening fixes it.

    But much thanks regardless, and I look forward to buying the real release when it comes out.

    • Anastasia Kazakova

      Anastasia Kazakova says:

      November 29, 2014

      If you manage to reproduce the problem on some sample project feel free to report the issue to the tracker. We’ll have a look. And thanks for the support.

  11. Avatar

    Vincent says:

    December 2, 2014

    Hi,
    During the install process, as well as during the first launch, it seems the compiler is used to create executables in background, but these are detected by viruses by Avast Antivirus, causing the tests to fail. Here is a sample popup :
    http://screencast.com/t/9QTcKFKmV
    I’m sure it’s a false positive, but as the filename is randomly generated, I don’t think I can tell Avast to ignore one specific file 🙁
    Keep on the good work,

    Vincent

    • Avatar

      Vincent says:

      December 2, 2014

      detected *as* viruses, not *by* viruses, of course

    • Anastasia Kazakova

      Anastasia Kazakova says:

      December 2, 2014

      We are trying to perform the simple check (just as Autotools do). CLion actually tries to build a simple program to check your toolchain and to report you the problems.

      • Avatar

        Vincent says:

        December 5, 2014

        Yeah, I guess so, and I’m not worried about that program in itself.
        But the result is that CLion is unusable if Avast is running on my computer.
        Maybe changing that program so that it looks more “legit” to Avast would do ? Or contacting Avast so that they don’t detect that program as a threat…
        Just my 2 cents 🙂

        • Anastasia Kazakova

          Anastasia Kazakova says:

          December 6, 2014

          We’ll see for sure what we can do.

          • Avatar

            Fer says:

            February 21, 2017

            Same happens with Symantec Antivirus. On the first start of the programs as when you open a new project, the antivirus detect those .exe files and clion config fails.

            • Anastasia Kazakova

              Anastasia Kazakova says:

              February 21, 2017

              CLion doesn’t include any software that can make a harm to your computer. This .exe is a test program that CLion uses to check that the Toolchains are configured properly. So to continue with CLion configure your antivirus to allow CLion to run it.

  12. Avatar

    Radomír Polách says:

    January 6, 2015

    I just tried the latest EAP version, it does not support std::enable_if and variable number of arguments in templates.

    • Avatar

      Radomír Polách says:

      January 6, 2015

      Example of variable number of arguments template:


      template
      class variant_base;

      template
      class variant_base {
      static const size_t data_size = ST::value;
      static const size_t data_align = AT::value;

      using data_t = typename std::aligned_storage::type;
      protected:

      size_t type_id;
      data_t data;

      variant_base() { this->type_id = 0; }
      };

      template
      class variant_base : public variant_base {
      protected:
      variant_base() { this->type_id = 0; }
      public:
      using variant_base::variant_base;

      variant_base(const F& value) { this->type_id = typeid(F).hash_code(); new (&this->data) F(value); }
      variant_base(F&& value) { this->type_id = typeid(F).hash_code(); new (&this->data) F(std::move(value)); }
      };

      • Avatar

        Radomír Polách says:

        January 6, 2015

        Ooops, it has been mangeled somehow, trying again:

        template
        class variant_base {

        template
        class variant_base : public variant_base {

        protected:

        • Avatar

          Radomír Polách says:

          January 6, 2015

          Nope, it doesn’t post correctly here.