Jump to: navigation, search

CDT/User/NewIn91

< CDT

Release

This is the New & Noteworthy page for CDT 9.1 which is part of the Eclipse Neon.1 update release of September 2016

Editor

Parameter Guessing

When code completion is invoked in a function call expression, appropriate substitutions are suggested for each of the function parameters. link

Function call.png

Expand Ruler Icons

The JDT feature to expand ruler icons when hovering has been ported to CDT. This allows interaction with individual annotations where there are multiple annotations on a single line. (Bug 476797)

CDT 9 1 AnnotationHover.jpg

This feature is enabled by default but can be disabled in preferences.

CDT 9 1 AnnotationHover Pref.jpg

Parser

decltype(auto)

The CDT parser now has the capability to recognize the decltype(auto) specifier in function return types and in variable declarations. Previously, code containing such declaration specifiers resulted in syntax error for correct C++14 code. See (Bug 482225)

In the screenshot below, two applications of the decltype(auto) specifier are shown.

Decltype auto specifier in cdt 9 1.png

Formatter

A new formatter option has been added for line comments. This new option, Treat indented line comments as block of comments on unindented code, on the Comments tab of the formatter preserves line comments in a block starting after unindented code (such as global variables). See (Bug 499553)

CDT 9 1 block comments on first column.png

Build

CMake Projects

Early support for CMake projects have been added. This is very much a preview and not recommended for production. It supports calling out to CMake to generate Makefiles to build the CMake projects.

New C/C++ Project Wizard

A new "New C/C++ Project" wizard has been added. It uses the new template engine UI that was introduced for Qt and Arduino projects. It contains those as well as the previous "New C Project" and "New C++ Project" wizards as entries.

NewCCPPProjectWizard.png

The old new project wizards will remain for the rest of the Neon series with consideration for removal in Oxygen. The New Qt Project wizard will be removed though since this new wizard covers it. The Arduino one will remain since this is directed at a hobbyist community who would identify more with Arduino than C/C++.

Build Targets in the Project Explorer

Make Targets have been renamed Build Targets to better reflect their nature (i.e. not only for "make" targets). They have also been added to the Project Explorer under a "Build Targets" virtual node under each container (folder/directory) that has build targets defined.

CDTBuildTargets.png

Debug

Show Reason for Crash when Postmortem Debugging

When debugging a postmortem file, the reason for the crash is displayed on the thread label in the Debug view. (see commit)

CDT PostMortemReason.png

LLDB Debugger integration (experimental)

Experimental support for the LLDB Debugger has been added. The integration makes use of lldb-mi which allows communication with CDT via MI protocol, similarly to GDB. Instructions on how to use the LLDB integration are available in the CDT User FAQ. Note that there are several limitations with this experimental integration but both CDT and lldb-mi are expected to improve in subsequent releases.

Cdt-lldb-debugging.png

Bugs Fixed in this Release

See Bugzilla report Bugs Fixed in CDT 9.1