http://gcc.gnu.org/projects/cxx0x.html
C++0x/C++11 Support in GCC
C++0x was the working name of a new ISO C++ standard, which was then released in 2011 as C++11 and introduces a host of new features into the standard C++ language and library. This project seeks to implement new C++11 features in GCC and to make it one of the first compilers to bring C++11 to C++ programmers.
C++11 features are available as part of the "mainline" GCC compiler in the trunk of GCC's Subversion repository and in GCC 4.3 and later. To enable C++0x support, add the command-line parameter -std=c++0x
to your g++
command line. Or, to enable GNU extensions in addition to C++0x extensions, add -std=gnu++0x
to your g++
command line. GCC 4.7 and later support -std=c++11
and -std=gnu++11
as well.
Important: GCC's support for C++11 is still experimental. Some features were implemented based on early proposals, and no attempt will be made to maintain backward compatibility when they are updated to match the final C++11 standard.
C++11 Language Features
The following table lists new language features that have been accepted into the C++11 standard. The "Proposal" column provides a link to the ISO C++ committee proposal that describes the feature, while the "Available in GCC?" column indicates the first version of GCC that contains an implementation of this feature (if it has been implemented). For the most complete and up-to-date information about new language features in C++11, please see the ISO C++ Committee Papers and look for the most recent "State of C++ Evolution" paper by Alisdair Meridith.
For information about C++11 support in a specific version of GCC, please see:
- GCC 4.3 C++0x Status
- GCC 4.4 C++0x Status
- GCC 4.5 C++0x Status
- GCC 4.6 C++0x Status
- GCC 4.7 C++11 Status