Show Your Support: This site is primarily supported by advertisements. Ads are what have allowed this site to be maintained on a daily basis for the past 18+ years. We do our best to ensure only clean, relevant ads are shown, when any nasty ads are detected, we work to remove them ASAP. If you would like to view the site without ads while still supporting our work, please consider our ad-free Phoronix Premium.
New GCC 5.0 Changes, Command-Line Options That Landed So Far
The GNU Compiler Collection 5 won't be released until sometime around early-to-mid 2015. In the months since the GCC 4.9 release there's been continued work on Link-Time Optimizations, Intel contributing its MIC runtime offloading library, and continued work towards C++14 support. Much more work is expected in the months ahead and we're still waiting to see GCC's OpenACC 2.0 support with a NVIDIA GPU back-end, support for upcoming Intel and AMD CPUs, more ARM/ARM64 optimizations, and much more.
Anyhow, the tentative GCC 5 release notes were updated this week to reflect some more of the developer-facing changes coming to this next release. You can find the tentative, in-development release notes for GCC 5.0 via the GNU.org documentation. Besides GCC's G++ now supporting C++14 variable templates, GCC for Fortran 2003 supporting the intrinsic IEEE modules, experimental support for Fortran 2008's co-arrays, and new parallel features in Fortran, there's a number of new command-line switches.
In GCC 5 the UndefinedBehaviorSanitizer is getting new sanitization options for floating-point division by zeros, a check to ensure floating-point type to integer conversions don't overflow, instrumentation of array bounds and out-of-bound access detection, and alignment checking for objects. These new sanitization options are exposed via various -fsanitize= values.
GCC 5's C family support also has a number of new command-line options for exposing additional compiler warnings: -Wswitch-bool, -Wlogical-not-parentheses, -Wsizeof-array-argument, and -Wbool-compare. For the C support is also new -Wc90-c99-compat, -Wc99-c11-compat, and -Wno-incompatible-pointer-types options.
Stay tuned for more GCC 5.0 coverage in the months ahead along with fresh compiler benchmarks on Phoronix.