Early Access Program

CLion 2018.1 EAP: Messages tool window and fixes for ternary operator

Hi,

A new CLion 2018.1 EAP build (181.3494.7) is available for download. As usual, no license is required for this build, and you can install it side by side with your stable CLion version.

Download CLion 2018.1 EAP

Messages tool window

The general idea behind the change is to make Messages tool window behavior more flexible and let users decide if the build output is always necessary (and thus should be visible) or it’s only needed if some warnings or errors appear. In the Messages tool window settings you can find two options:

  • Always show on Build: default setting, forces the Messages tool window to stay opened on every build (and open the window if it was closed explicitly).
  • Auto-Hide and Show on Warning/Error: forces to hide Messages tool window on each build if it was opened, then opens it back if warning/error occurs during the compilation, and leaves Messages closed if the build was successful.

If you disable both options, then CLion won’t open Messages tool window unless there’s a warning/error. Thus, if you open/close Messages tool window manually, it will stay in that position.
messages_window

C++ language support improvements

Many false positives in code analysis related to ternary operator were fixed in this build:

  • Using format specifier ‘%s’ with conditional operator argument results in bogus warnings (CPP-1450)
  • Red code in ternary + new operator (CPP-9526)
  • False positive if std::out is used in the ternary operator (CPP-11499)
  • Initializing a reference from a ternary operator tries to use a constructor (CPP-9889)
  • Wrong “Types are not compatible” error reporting when using function and function pointer in a ternary operator (CPP-7404)
  • The type of ternary operator with “int *” is inferred incorrectly (CPP-3260)
  • And some more

Besides, this build addresses a few UI freezes. Full release notes are available here.

Your CLion Team
JetBrains
The Drive to Develop

image description

Discover more