A major release of the GNU Compiler Collection

May 21, 2007 07:43 GMT  ·  By

The GNU project has proudly announced the release of the GCC 4.2.0, which will definitely surprise you with its new features and improvements, compared to the previous 4.1 version. Distributed by the Free Software Foundation, GCC is the result of Richard Stallman's initiative, who first released it in 1985. Initially, it was designed for the C programming language only, but afterwards the compiler supported several other languages aside from C. Therefore, the GCC shortage stands now for the GNU Compiler Collection.

The list of changes, improvements, new features, fixes and enhancements brought to the 4.2 version has an impressive length and consistence. One of the first things that one will notice regarding this release would be that it no longer makes use of the obsolete ?fshared-data option. As the target to which this option was applied was removed even before the release of GCC 4.0, there was no longer need for it. There can also be noticed some new command-line options, which are used to point out the possible relationships between parameters or between parameters and global data. You won?t have to use these options yourself though, as each language itself will automatically choose whatever option is required by the language standard.

Highlights:

- there are some new command line options: -fstrict-overflow (which forces the compiler to assume that the program follows the strict signed overflow semantics permitted for the language) and -Wstrict-overflow. - the C/ C++ and Fortran compilers now support OpenMP - C++ visibility handling has been overhauled. David Baron, Mozilla engineer, expects that this would bring changes to visibility handling "to make Mozilla on Linux a bit faster." - -Waddress command line option has been added to warn about suspicious uses of memory addresses as, for example, using the address of a function in a conditional expression, and comparisons against the memory address of a string literal - the < ?, > ?, < ?=, and > ?= deprecated operators have been removed - the configure variable enable-__cxa_atexit is now enabled by default for more targets (when this is enabled static destructors are executed in the correct order, but it also depends upon the presence of a non-standard C library in the target library)

GCC is now the standard compiler for most of the free software, the Unix-like operating systems or Apple Mac OS X. GCC compiler is also required to execute developing software on a plethora of hardware.