GNU Compiler Collection 5.1 Released
Written by Alex Armstrong   
Tuesday, 28 April 2015

Thanks to its new numbering scheme this is the first stable release of the GNU Compiler Collection (GCC) 5.x series and comes less than a year after the release of GCC 5.0, the experimental release.



The GNU Compiler Collection (GCC) is a key component of the GNU toolchain and is distributed by the Free Software Foundation. 

As well as being the official compiler of the GNU operating system, GCC has been adopted as the standard compiler by many other modern Unix-like computer operating systems, including Linux. Versions are also available for Microsoft Windows and other operating systems.

Originally named the GNU C Compiler, when it only handled the C programming language, GCC 1.0 was released in 1987 and was extended to compile C++ in December of that year. Front ends were later developed for Objective-C, Objective-C++, Fortran, Java, Ada, and Go among others.

GCC has been ported to a wide variety of processor architectures, and is widely deployed as a tool in the development of both free and proprietary software.

Last year the ACM honored GCC with its Programming Languages Software Award and the citation sums it up with:

The GNU Compiler Collection (GCC) provides a portable, production-quality, standards-compliant, highly optimizing compiler, supporting more architectures, programming languages, and operating environments than any other comparable tool. It provides the toolchain that underpins all of the GNU/Linux distributions, popular websites, and embedded environments.

News of the release of GCC 5.1 was communicated to the GCC project mailing list by Jakub Jelinek who itemised the following significant changes:

The C++ front-end now has full C++14 language support while the Standard C++ Library has experimental C++14 support and full C++11 support, which has been made possible by adopting Dual ABI.

The C front-end now defaults to C11 mode with GNU extensions, which affects semantics of the inline keyword and brings several other
user visible changes.

GCC 5.1 contains various interprocedural optimization improvements, e.g. a new IPA Identical Code Folding pass, and various LTO improvements, e.g. ODR based merging of C++ types.

The GCC 5.1 Local Register Allocator now contains a rematerialization subpass which permits it to reuse the PIC hard register on x86 and x86_64 hardware architectures to improve performance of position independent code. A simple interprocedural RA pass and various other register allocation improvements have also been added

GCC 5.1 adds partial support for the OpenACC standard, support for OpenMP 4.0 offloading to Intel's upcoming Xeon Phi accelerators and support for OpenACC offloading to PTX. The Undefined Behavior Sanitizer in GCC has been extended by adding various new runtime checks and an experimental GCC JIT library has been added.

Details of more changes can be found on GCC 5 Release Series Changes, New Features, and Fixes

GCC 5.1 is available for the FTP servers list on the GNU Operating System site



More Information

GCC, the GNU Compiler Collection

GCC 5 Release Series Changes, New Features, and Fixes


Related Articles

GCC Gets An Award From ACM

GNU Manifesto Published Thirty Years Ago

GNU Hurd 0.6 Released


To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, FacebookGoogle+ or Linkedin,  or sign up for our weekly newsletter.



MongoDB Atlas Stream Processing Generally Available

The MongoDB developers have announced that MongoDB Atlas now has support for stream processing. The news was announced at MongoDB.Local NYC.

A Swarming Bee From Festo

The latest addition to the Festo Bionic Learning Network menagerie of bionic robots inspired by the natural world is a bee. Like the Bionic Ant from a decade ago, it has been designed n [ ... ]

More News


raspberry pi books



or email your comment to:

Last Updated ( Tuesday, 28 April 2015 )