Skip to main content
Jump to: navigation, search


Revision as of 12:28, 23 November 2017 by (Talk | contribs) (Build)


This is the New & Noteworthy page for CDT 9.4 which will be part of Eclipse Oxygen.2


Open Declaration on decltype

Open Declaration on a decltype token now opens the declaration of the deduced expression type (bug 520913).

Code Analysis

A new quick fix was added for suppressing a problem by adding a suppression comment (bug 495842).

CDTQuickFixSuppress1.png CDTQuickFixSuppress2.png


Command line code formatter It is now possible to format source code without starting the Eclipse UI using the new headless formatter application. The command line formatter works as a standard Eclipse application.

The following command will format the source files in the folder src with the options specified in the org.eclipse.cdt.core.prefs file:

eclipse -nosplash -application org.eclipse.cdt.core.CodeFormatter -consoleLog \
        -verbose -config .settings/org.eclipse.cdt.core.prefs src/

See Using the Formatter Application and bug 520340 for details.



Headless Build Headless build has three new command line arguments:
  • -marker-type which specifies which marker types to consider when failing a build. Can be all (default) cdt (shortcut for C/C++ Problems) or any marker ID. Can be specified multiple times to check for multiple markers. Can be used to, for example, prevent C/C++ Scanner errors from causing build failures.
  • -printErrorMarkers prints all error markers (debugging option) at the end of a build. Can be used to diagnose why build has failed (specific error markers).
  • -help display help.

See (bug 520163).

Core Build System The CDT Core Build System continues to advance.

Support for Autotools projects has been added as an experimental feature.

Support for Makefile projects has been added. The old Include Paths and Symbols project preference page is added to these projects to allow manually adding this information to improve indexer performance.

A Toolchains preference page has been added. Its currently appears under the CMake preference page to avoid confusion with managed build preferences. It can be used for Makefile projects as well. This page allows users to control the preference order of toolchains for the auto creation of build configurations. It also allows users to manually add toolchains based on a toolchain type. Currently GCC and clang are supported.

Core Build Targets To support auto selection of target types without having to have a full target integration, the Generic Target type is added. It allows users to manually create targets and set the os and cpu architecture to direct toolchain selection. It also allows for executing any command at launch time using UI borrowed from the External Tools launches.

By extending Generic Targets, support is added for launching over serial. This is frequently used when working with microcontrollers and launch involves writing an image to flash over the serial port. Co-ordination is provided for the serial port to allow concurrent use with the Terminal View.


External Console You can now debug a program with an external console window easily in CDT on Windows. This prevents GDB mixing its input/output with the program being debugged. CDT launches the new console by telling GDB with "set new-console on". This is a Windows only feature as only Windows has support for "set new-console on".

click for larger version

You can set whether to use an external console window in the launch configuration:

click for larger version

You can set the default value for any newly created launch configurations in the preferences:

click for larger version

See (bug 520580).

API modifications

  1. The method GDBJtagStartupTab#createRunOptionGroup(Composite) has been deprecated because the content of the run options group and the run commands group has been merged within the Startup page of the UI (see bug 525692). Extenders should override GDBJtagStartupTab#createRunGroup(Composite) instead.

Bugs Fixed in this Release

See Bugzilla report Bugs Fixed in CDT 9.4

Launch Bar

The CDT 9.4 release include the Launch Bar 2.2.0 minor release.

The main feature in this release is clean up of the New Launch Config wizard so that the launch mode and launch configuration types appear on the same page. This simplifies the UX by showing the user why selecting the Mode is important, i.e. it changes the list of available types that support that mode.

Additionally we've added a new way of specifying New Launch Target wizards so that the wizard can be also used to edit the target.

And finally, we've added a mechanism for adding Build Settings tabs to the Descriptor editor.

Copyright © Eclipse Foundation, Inc. All Rights Reserved.