diff --git a/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew.htm b/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew.htm index f8e4ff5e229..e9ec9648c2f 100644 --- a/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew.htm +++ b/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew.htm @@ -15,8 +15,8 @@ tr {vertical-align: top;}
-See What's new in CDT 7.0 on the CDT wiki +
See What's new in CDT 8.0 on the CDT Wiki which may contain more recent information.
- Sort Lines +Override_Markers |
- The new Sort Lines command that sorts selected lines alphabetically. + |
+ In C++ files, method declarations and definitions are annotated on the vertical bar using three types of symbols: +
As in JDT, the annotations have the action which allows to go to the declaration in base. + In case of multiple inheritance, the messages also contain the name of direct base class of the overriding method's class if the overrided method's class is further up the inheritance hierarchy. + +Contrary to JDT, several messages are sometimes generated on one marker (e.g. when the same method is overridden through several base classes). + + |
+ |
+ Selection Expansion + |
+
+ The C++ editor now allows to expand the selection to enclosing, next and previous nodes of the AST, as well as restore the hierarchy. + +The behaviour is strictly analogous to JDT and the actions are located in "Edit -> Expand Selection To" menu. + |
||
- Surround with +Camel Case Completion |
- The C/C++ now supports camel case completion similar to the one of the JDT. The following additional features are available: + +
|
||
- Templates View support +Configurable Name Style |
- Added Templates View support.
- |
+ User-configurable name styles for constants, variables, class fields, getters and setters, and for header, source and test files. + + |
|
- Outline View Groupings +New Code Formatting Options |
- Option to group macro definitions in the Outline view.
- + |
+ New options for formatting of constructor initializer lists, stream output expressions, and inline comments. Numerous improvements to the code formatter. + + |
+ |
+ New Code Templates + |
+
+ New code templates for namespace and class declarations and for C++ test files. + + |
||
- Codan
+ Code Analysis (Codan)
|
|||
- Code Analysis +Unresolved Symbols |
- New code analysis framework is introduced, called Codan. See this
- wiki for details.
- + |
+ Codan now has a checker which generates Problems on instances of ProblemBindings in AST, generated by the Parser. This allows to reveal many errors while typing. + Quick fixes are provided for a subset of problems. As for now, the available fixes are: + +
|
|
- Getters and setters +Rename Refactoring as Quick Fix |
- Choice where to place getters and setters during refactoring. + |
+ Rename in workspace option in quick fix. + |
|
- Refactoring History +Lightweight Rename Refactoring |
- Introduced Refactoring History for the CDT Refactorings
- + |
+ JDT-style rename refactoring. + |
|
+ Toggle Function Definition + |
+
+ Toggle Function Definition moves a function definition inside an C/C++ source editor from one + position to another and preserves correctness. + + |
+ ||
- Edit While Building +Build Console |
- Allow saving files while external Makefile builds are in progress + |
+
|
|
- Console Error Highlighting +Error Parsers |
- Compiler errors and warnings are now highlighted in the build console.
- Navigation from errors in build console to location in editor is possible
- with double-click on the highlighted line.
- |
+
|
|
- Regex Error Parser +Make Targets |
- Regular Expression Error Parser introduced. The parser is user-configurable and can be used
- to parse errors from non-standard compilers
- |
+
|
|
- Save Log +Managed Build |
- Added ability to save build log to a file
- |
+
|
|
- Run Last Target +Scanner Discovery |
- New keyboard bindings Run Last Make TargetF9/Shift-F9 - |
- ||
- Project Context Menu - |
- Organized project context menu related to build.
- |
- ||
- Build Selected Configurations - |
- Reworked Build Selected Configurationsdialog. - |
- ||
- Build Preferences - |
- Organized build preferences under Build page.
- |
- ||
- New Icons - |
- New icons and decorations.
- |
- ||
- Import Includes - |
- Import/Export in Includes and Symbols tabs on the Paths and Symbols project properties.
- |
- ||
- MinGW and Cygwin - |
- Better algorithms to recognize MinGW and Cygwin toolchains, see - bug 303900 (Cygwin 1.7) and - bug 195572 (MINGW) for details. - | -||
- Hello World - |
- When a Hello World project is created, open generated file automatically. - | -||
- Headless Builder - |
- Headless Builder has been improved: supports configuration selection, - returns error code if built projects have error markers. - | -||
- GCC options - |
- ManagedBuild GCC toolchain supports pre included header files, i.e. -include switch to gcc
+
|
||
- References - |
-
-
|
- ||
- UPC - |
-
-
- |
- ||
@@ -258,46 +259,254 @@ which may contain more recent information. | |||
- Non-Stop +Project-less debugging |
- Support for Non-Stop Debugging (stopping one or more threads while the others continue to execute).
- Requires GDB 7.0 or newer.
- |
+ CDT can now be used to debug any binary, without needing to specify or even create a project in Eclipse. This is supported for all types of debugging (local, remote, attach, and post-mortem sessions). + Furthermore, for an attach session (local or remote), there is even no need to specify the binary; for a local attach, GDB can find the binary automatically, while for a remote attach, CDT will prompt for it when it needs it. + +This feature was completed April 26th, 2011 as part of Bug 343861 |
|
- Features +Support for full pretty-printing of complex structures |
-
+ With the proper setup of GDB, DSF-GDB will now print complex structures such as Maps, Lists and Vectors, in a user-friendly fashion, within the Variables and Expressions views, as well as the advanced Debug hover of the Editor. See below on how to setup GDB for this feature to work. +
|
+ ||
+ Support for pending breakpoints + |
+
+ When a breakpoint is set in a dynamically-linked library that was not loaded yet, the breakpoint will now work, once the library is loaded. See bug 248595. This feature is currently only supported when using GDB 6.8 or later. + + |
+ ||
+ Showing cores in Debug view labels + |
+
+ By using the enhancements of GDB 7.1, DSF-GDB now shows the core on which each thread runs as an extra part of the Debug View label. The list of all cores on which a process is located is also added as a label. The below image shows the new feature. + +This feature has been implemented for CDT 8.0 as of July 6th, 2010, as part of Bug 318230. The feature will be enabled automatically as long as GDB 7.1 or greater is used. + + |
+ ||
+ Showing cores and owner in attach prompter + |
+
+ DSF-GDB now shows the owner of a process as an extra part of the process prompt for an attach session. The owner id will be shown starting with GDB 7.0. For a Remote attach session (using gdbserver --multi), the cores on which a process is located will also be shown. Showing the cores starts with GDB 7.1. The below image shows the new feature. + This feature has been implemented for CDT 8.0 as of July 30th, 2010, as part of Bug 318230 comment 21. The feature will be enabled automatically as long as the proper version of GDB is used. + + |
+ ||
+ Pin & Clone + |
+
+ Variables, Expressions, Registers, Disassembly, and Memory Browser now supports opening multiple instances, and pin the view input to the selected debug context(s) in the Debug view. This can be used, for example, to easily compare the data of different threads. + +This feature has been implemented for CDT 8.0 as of Feb 15th, 2011, as part of Bug 327263, Bug 331781, and Bug 334566. + + |
+ ||
+ Multi-process Debugging + |
+
+ CDT now supports debugging multiple processes in a single debug session. It allows to attach/detach and start/stop processes repeatedly and easily. + Requirements: + +
To use multi-process debugging, simply launch an application as you normally would, locally or remotely, using gdbserver, and make sure to select Non-stop mode in the Debugger tab. Then, use the Debug View's "Connect" button to trigger a dialog with allows you to either attach to a running process, or to create a new process using the "New..." button. Currently, the "New..." button is only supported for Local debug sessions. + +
You will then have the newly selected process added to your debug session, where you can control it and examine it. You can use the "Disconnect" button to remove processes from your debug session, or you can use the "Connect" button to add new ones. + +
An option to automatically attach to a forked process is also available. This means that whenever any process you are currently debugging forks a new process, that new process will be added to your debug session. + + + + |
+ ||
+ C/C++ Remote Application launch + |
+
+ The optional "C/C++ Remote Application" launch configuration type has been made permanent for CDT. + +The "GDB (DSF) Remote System Process" launch delegate has been renamed to "GDB (DSF) Manual Remote Debugging" and has been moved from "C/C++ Application" to "C/C++ Remote Application". As was the case for CDT 7.0, the optional RSE Remote Launch delegate of org.eclipse.cdt.launch.remote, is still part of "C/C++ Remote Application". + This optional remote launch now provides a new DSF-GDB-based launch delegate called "GDB (DSF) Automatic Remote Debugging". This launch is very similar to the existing "GDB (DSF) Manual Remote Debugging" delegate, except that the automatic one will automatically download the application to the remote target and start gdbserver with the application. + +By default, the user will be shown the "GDB (DSF) Manual Remote Debugging". However, if the optional feature of Remote Launch is installed, the default will automatically become the more feature-rich "GDB (DSF) Automatic Remote Debugging". + Finally, the run-mode RSE Remote Launch delegate no longer shows the Debugger or Source tabs, since they were not relevant, in run-mode. + + |
+ ||
+ New set of preferences + |
+
+ A set of new preferences have been added to Preferences->C/C++->Debug->GDB to allow users to have a better debugging experience. These new preference are: + +
|
+ ||
+ Extra node for debugged process no longer shown + |
+
+ The debugged process extra launch node has been removed from the Debug view. This node was felt to waste space, especially when dealing with multi-process debugging as we would have needed many of them. The Debug view already shows the debugged process as a container of threads, right below the launch node. + + |
||
+ API Changes and Migration to CDT 8.0
+ |
+ |||
+ + |
+
+ The changes affecting compatibility are listed here. Keep in mind that this list likely does not list all the issues, only some of them. + + |
+ ||
+ General + |
+
+
|
+ ||
+ DSF-GDB + |
+
+
(IBreakpointsTargetDMContext)fCommandControl.getContext() // Will fail with an Invalid Cast exception +(IDisassemblyDMContext)fCommandControl.getContext() // Will fail with an Invalid Cast exception ++ will now fail because the command control context is no longer an IBreakpointsTargetDMContext/IDisassemblyDMContext. Instead, MIContainerDMC now implements IBreakpointsTargetDMContext/IDisassemblyDMContext. This change was necessary to fully support multi-process and was done in bug 335324 and bug 344298. + + |
+ ||
+ Codan + |
+
+ The class org.eclipse.cdt.codan.core.cxx.model.CxxModelsCache is no longer a singleton. + |
+ ||
+ |
Bugs Fixed
|
Fixed |
- All Bugzilla tasks closed in this release:
-
- CDT 7.0 bug fixes
-
- + | Bugzilla tasks completed for this release: + + CDT 8.0 bug fixes |
+ |
Known Limitations
|
See also CDT 6.0 - New and Noteworthy to learn what's new in previous CDT versions.
+To learn what's new in CDT releases see:
+ + + +Back to Top diff --git a/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew_60.htm b/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew_60.htm index 280b9a97598..27f4c93ce54 100644 --- a/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew_60.htm +++ b/doc/org.eclipse.cdt.doc.user/concepts/cdt_c_whatsnew_60.htm @@ -453,6 +453,12 @@ See What's New in CDT 5.0
+
To learn what's new in CDT releases see:
+ + + + +