CDT 2.0 - New and Noteworthy

Just last fall the CDT team was celebrating the release of the 1.2 version of the Eclipse based C/C++ development tools while Eclipse development continued its march towards a much anticipated Eclipse 3.0 release.

Not interested in getting left behind in the excitement surrounding a new Eclipse release, the CDT team has slaved away on its own Eclipse 3.0 compatible release. Here are some of the highlights of the 2.0 version of the C/C++ development tools, now available from the CDT download site


C/C++ Project Configuration and Build

Background Activity Support

CDT 2.0 makes full use of Eclipse 3.0 background activities for Building, Indexing and Searching. See all the action in the Progress View


Automatic Project Settings Discovery

Automatically generate project defines and include path settings from the C/C++ Make Project > Discovery Options project settings


Multiple Binary Architectures Per Project

Building for multiple binary formats? Choose the appropriate formats using the Binary Parser project option.


Include Paths and Symbols

Use the C/C++ Include Paths & Symbols project properties to help limit the project parsing and indexing to only those projects which are relevant.


C/C++ File Types

Define specific files, especially C++ headers without extensions, using the C/C++ File Types global preference or project property.


Build Console Colours

More easily detect errors with coloured build console output. Set the colours via Window > Preferences > C/C++ > Build Console


C/C++ Working Set

Working sets containing only C/C++ projects and resources can be created now by creating a C/C++ Working Set definition.


C/C++ Editing & Source Navigation

C/C++ Content Assist

Code editing just got easier with a more full featured content assist! Completions now provided in the C/C++ editor for:
classes & structure members, local & global variables, functions, pre-processor defines, pre-processor commands

Configure completion options in the global C/C++ Editor Preferences


Rename Refactoring

Use the Outline or the C/C++ Editor Refactor > Rename context menu to refactor class & type names, methods, functions & member names.


Open Type

Use Navigate > Open type (Ctrl-Shift-T) to open up the declaration of C/C++ classes, structures, unions, typedefs, enumerations and namespaces.


C/C++ Browsing Perspective

Use the C/C++ Browsing Perspective to navigate the class and structure members of a particular project.


Makefile Editor

The Makefile Editor now provides syntax highlighting, code completion and content outlining capabilities.


Search Enhancements

The C/C++ search provides context sensitive searches from the Outline view as well as resource selection restricted searches in the C/C++ Search Dialog


Hyperlink Navigation

The C/C++ Editor supports hyperlink navigation if enabled via Window > Preferences > C/C++ > C/C++ Editor Preferences. Then you can use Ctrl - Click to jump to the declaration of an item directly in the C/C++ editor.


Index Error Markers

Enable C/C++ indexing and indexer error reporting in the C/C++ Indexer properties. This helps identify projects missing path configuration information.


C/C++ Debugging

Mixed Source/Assembly

Gone are the days of toggling the C/C++ editor to show the assembly of a program. Instead use the Disassembly View to see both assembly code and source mixed!


Global Variables

Global variables can now be added to the Variables View instead of having to add them as seperate expressions.


GDB Console

The gdb Console has moved to being a proper console selection of its own in the generic Console View


Automatic Refresh Options

Configure the default behaviour of the automatic retrieval of shared library and register information in the C/C++ debugger.