From the ‘Only Compiler That Matters’ files:
In the pantheon of Free Software, one program stands at the base of (nearly) all others: GCC. First release all the way back in 1987, by Richard Stallman it has been the compiler of choice for the last 25 years.
“When Richard Stallman announced the first public release of GCC in 1987, few could have imagined the broad impact that it has had,” SUSE Linux developer Richard Guenther wrote in the mailing list announcement for GCC 4.7. “It has prototyped many language features that later were adopted as part of their respective standards — everything from “long long” type to transactional memory.”
This week, GCC 4.7 came out marking the latest installment of the world’s most popular compiler (open or otherwise). At a high-level the big new features that stand out for me are the improved support for the new ISO C++11 standard. There is also support for software transactional memory on selected architectures. The C++ compiler supports a bigger subset of the new ISO C++11 standard.
There are also improvements to the link-time optimization (LTO) framework.
The GCC 4.7 release comes about a year after GCC 4.6, which added some general optimization features that no doubt have helped to speed up any software it has been used to compile in the last year. The GCC 4.x branch itself first debuted back in 2005, which also introduced general optimization capabilities.
What continues to amaze me with GCC is that every year, with unbreakable cadence, GCC continues to find new ways to improve. That’s not an easy thing to do year-after-year. Sure there are also things such as support for new hardware and languages, but it is the unwavering focus on optimization that has been the hallmark of the GCC 4.x branch in particular that will continue to make this project extremely relevant for many years to come.