Many new features in GCC 4.6
The GCC developers have released the final version 4.6.0 of the GNU Compiler Collection. The new release has been issued about a year after the previous major version (GCC 4.5). The free software compiler collection now supports Intel's Sandy Bridge processors, including the AVX (Advanced Vector eXtensions) functionality of those processors. The developers have also improved the collection's optimisation with the first generation of Core-i3/i5/i7 processors and the Core 2 processors. GCC also supports more ARM-based platforms, such as Cortex-M4, Cortex-A15, and will also work with AMD's Bobcat x86 processor architecture that is due to support AVX before the end of the year.
In terms of programming languages, GCC 4.6 now supports Google's Go programming language and offers rudimentary support for C1X, the revision of the C programming language. Go is disabled by default but can apparently simply be "added". The new version offers initial components required to support Ada 2012, and the developers have improved the collection's handling of the forthcoming C++0x standard and of Fortran. Another interesting addition is the support of Google's Bionic C library, which now allows native Android libraries and applications to be developed using the GCC, though currently, Android support is only enabled for the ARM.
The developers have also added numerous new compiler features and alerts discussed in detail in the changelog. For example, a new optimisation level,
-Ofast, has been added which combines the
-O3 optimisations with options which may increase performance but affect standards compliance such as the
-ffast-math flag. The compiler now offers stricter checks for invalid command-line options, such as linker options, that could previously cause errors when the source code was compiled. Another new addition is the LGPL licensed libquadmath math library which provides quad-precision mathematical functions on 32-bit and 64-bit x86 and Itanium systems. Various systems including Argonaut ARC, National Semiconductor CRX and Motorola's 68HC11/68HC12 have now been marked as "obsolete", which means that they will no longer be supported and will probably be removed in the next version.
GCC 4.6 will apparently be a part of Fedora 15, expected in mid-May, but it won't be the standard compiler of Ubuntu 11.04 which is scheduled for release at the end of April.