GCC Moves Forward With Conversion To C++

Posted by Michael Larabel on August 12, 2012

The GCC initiative to convert more of the code-base from C to C++ as the implementation language for this leading open-source compiler is nearing fruition. On Sunday, Google's Diego Novillo published a set of GCC patches for merging the C++ conversion into trunk.

The set of six patches so far implement the changes made within GCC's cxx-conversion branch and change the default boot-strap process so that stage one of the compiler build always happens with a C++ compiler. It's possible the cxx-conversion branch could be merged for GCC 4.8, which will be released in 2013. Back in April I wrote about the aim for the C++ switch being GCC 4.8.

The patches published on Sunday are currently floating on the gcc-patches mailing list.

As far as why the GCC code-base is being converted to C++, see the cxx-conversion Wiki page. The rationale for migrating the GNU Compiler Collection to C++ comes down to C++ is standardized and popular, is nearly a super-set of C90 currently used in GCC, the C subset of C++ is just as efficient as C, C++ supports cleaner code, C++ makes it easier to write and enforce cleaner interfaces, C++ never requires uglier code, and C++ is not a panacea but is seen as an improvement.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  2. Qt For Tizen Launches, Based On Qt 5.1
  3. KTAP Released For Linux Kernel Dynamic Tracing
  4. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
  5. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  6. Handbrake 0.9.9 Supports OpenCL Offloading
  7. Freedreno Gallium3D Now Banging The Adreno A3XX
  8. Jolla Announces Their First Phone
  9. Mageia 3 Released, Still Using Legacy GRUB
  10. NetBSD 6.1 Brings In More Features
  11. Using Six Monitors With AMD's Open-Source Linux Driver
Latest Forum Talk
  1. Microsoft Releases Skype For Linux 4.2, Has...
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  4. Jolla Announces Their First Phone
  5. Qt For Tizen Launches, Based On Qt 5.1
  6. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite