GPL version 3 was released by the FSF on June 29, 2007, and some (but not all) GCC sources were updated for trunk and active releases starting with GCC 4.2.2. Here are some o the patches.
Changing top level files and include/ files over to GPLv3 http://gcc.gnu.org/ml/gcc-patches/2007-07/msg00600.html RFA: Add GPLv3 COPYING files http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01341.html RFA: GPLv3: treelang http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01503.html RFA: GPLv3: gcc files http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01570.html RFA: GPLv3: testsuite http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01896.html RFA: GPLv3: gcc/cp http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01898.html RFA: GPLv3: gcc/fortran http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01905.html RFA: GPLv3: gcc/objc http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01922.html RFA: GPLv3: gcc/objcp http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01925.html RFA: GPLv3: gcc/java http://gcc.gnu.org/ml/gcc-patches/2007-07/msg02093.html RFA: GPLv3: gcc/ada http://gcc.gnu.org/ml/gcc-patches/2007-07/msg02096.html RFA: GPLv3: gcc/config http://gcc.gnu.org/ml/gcc-patches/2007-07/msg02146.html However, the following directories still use GPL version 2, or GPL version to variants like the GPL version 2 with a runtime exception: libgcc libstdc++ libgfortran libssp libcpp libobjc libgomp libdecnumber libiberty libmudflap And another library does not specify a GPL version: libjava (see LIBGCJ_LICENSE) The reason given for this partial transition is that the FSF is/was trying to unify the license used (the GPL 2 variants + runtime exception) such that all libraries could use the same wording, based off of the GPL version 3 text. It was assumed that at some point, the FSF legal team would produce finalized wording that the GCC team could then use for the remaining libraries. We are still waiting for this finalized text. In fact, the libstdc++ maintainers have been waiting for clarification on this issue since 1998. The preliminary wording was subject to draft review on April 30, 2008, but we've seen little since then. This bug is to track this effort, and hopefully add a bit of transparency to the process. -- Summary: GPL version 3 transition incomplete Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: bkoz at redhat dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38983