blob: 14c7604dcf78c75167086b00a2cc45f787f2fb61 [file] [log] [blame]
//////////////////////////////////////////
* Copyright (c) 2015, 2016 Eclipse Foundation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Wayne Beaton (Eclipse Foundation)- initial API and implementation
//////////////////////////////////////////
:cdtPackageUrl: https://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/marsr
[[cdt]]
== C/C++
Eclipse Neon includes many improvements in stability and some new
functionality for C/C++ developers.
=== General
==== Import Projects
When code completion is invoked in a function call expression, appropriate
substitutions are suggested for each of the function parameters.
image::images/Function_call.png[]
==== Create New Class - Quick Fix
In C++ files if "Type not found" error is detected, there is a new *Quick Fix*
now to create a class based on that type, which opens the *New C++ Class Wizard*.
Note: to enable quick user must enable "Type cannot be resolved" problem in
"Code Analysis" settings
image::images/CPPnewClass.png[]
==== Format Edited Lines Save Action
It is now possible to format either the whole file or only the edited lines when a source or a
header file is saved.
image::images/Save_Actions.png[]
==== Suppressions in code
It is now possible to suppress code analysis errors/warnings by adding comments in the code.
x = x; // @suppress("assignment in condition") because I know better
The comment is actually configurable using problem parameters (@suppress(<title>) is default).
=== Debug
==== Gdbserver options
For automatic remote debugging sessions, CDT now supports specifying extra options
that will be passed to gdbserver when starting it. This way, users could activate
debug messages (`--debug`), benefit of wrapper option (`--wrapper`) that gdbserver
supports or use the other available command-line options of gdbserver.
image::images/Gdbserver-settings-tab.PNG[]
==== OS Resources View Improvements
The _OS Resources_ view displays different information about the resources of the operating
system, such as list of all processes running on the target or files opened by processes
on target.
Now it is possible to attach to processes associated with selected resources directly
from _OS Resources_ view without resorting to "Connect to a process" button from Debug View.
image::images/OS_Resources_Attach.JPG[]
This feature requires non-stop mode support to be activated.
OS Resources View lists a lot of text information. Now it is possible to copy selected lines
to the clipboard to save for later comparison.
==== Debug UX
In an effort to reduce clutter, the Connect button was removed from the Debug toolbar. The action is still available from the Debug view context-menu as shown below. Furthermore, connecting to a process can now be done using the OS Resources view as described in this section.
image::images/CDT_Removed_Connect_Button.png[]
To streamline the UI, the "New..." button of the Connect dialogue which was used to create a new process has been removed. This action is available instead from the Debug view context-menu as shown below.
image::images/CDT_RemoveNewButton.png[]
=== Other Change and Improvements
The _Makefile Editor_ now provides a single key `pass:[Ctrl+/]` to toggle comments rather than
have `Ctrl+/` to comment and `Ctrl+\` to uncomment. This is consistent with CDT and Java editors.