From 8a649b7e5193d144b98b49daa65809153ad49005 Mon Sep 17 00:00:00 2001 From: jason Date: Wed, 21 Dec 2011 17:53:58 +0000 Subject: [PATCH] * doc/standards.texi (C++ language): Update for C++11. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182599 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 4 ++++ gcc/doc/standards.texi | 35 ++++++++++++++++++----------------- 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index eb67c58..70aea78 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2011-12-21 Jason Merrill + + * doc/standards.texi (C++ language): Update for C++11. + 2011-12-21 Jakub Jelinek * tree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize diff --git a/gcc/doc/standards.texi b/gcc/doc/standards.texi index 4e288c6..1813700 100644 --- a/gcc/doc/standards.texi +++ b/gcc/doc/standards.texi @@ -175,40 +175,41 @@ information concerning the history of C that is available online, see @section C++ language -GCC supports the ISO C++ standard (1998) and contains experimental -support for the upcoming ISO C++ standard (200x). +GCC supports the original ISO C++ standard (1998) and contains +experimental support for the second ISO C++ standard (2011). The original ISO C++ standard was published as the ISO standard (ISO/IEC 14882:1998) and amended by a Technical Corrigenda published in 2003 (ISO/IEC 14882:2003). These standards are referred to as C++98 and C++03, respectively. GCC implements the majority of C++98 (@code{export} is a notable exception) and most of the changes in C++03. To select -this standard in GCC, use one of the options @option{-ansi} or -@option{-std=c++98}; to obtain all the diagnostics required by the -standard, you should also specify @option{-pedantic} (or +this standard in GCC, use one of the options @option{-ansi}, +@option{-std=c++98}, or @option{-std=c++03}; to obtain all the diagnostics +required by the standard, you should also specify @option{-pedantic} (or @option{-pedantic-errors} if you want them to be errors rather than warnings). -The ISO C++ committee is working on a new ISO C++ standard, dubbed -C++0x, that is intended to be published by 2009. C++0x contains several -changes to the C++ language, some of which have been implemented in an -experimental C++0x mode in GCC@. The C++0x mode in GCC tracks the draft -working paper for the C++0x standard; the latest working paper is -available on the ISO C++ committee's web site at -@uref{http://www.open-std.org/@/jtc1/@/sc22/@/wg21/}. For information -regarding the C++0x features available in the experimental C++0x mode, +A revised ISO C++ standard was published in 2011 as ISO/IEC +14882:2011, and is referred to as C++11; before its publication it was +commonly referred to as C++0x. C++11 contains several +changes to the C++ language, most of which have been implemented in an +experimental C++11 mode in GCC@. For information +regarding the C++11 features available in the experimental C++11 mode, see @uref{http://gcc.gnu.org/projects/@/cxx0x.html}. To select this -standard in GCC, use the option @option{-std=c++0x}; to obtain all the +standard in GCC, use the option @option{-std=c++11}; to obtain all the diagnostics required by the standard, you should also specify -@option{-pedantic} (or @option{-pedantic-errors} if you want them to be -errors rather than warnings). +@option{-pedantic} (or @option{-pedantic-errors} if you want them to +be errors rather than warnings). + +More information about the C++ standards is available on the ISO C++ +committee's web site at @uref{http://www.open-std.org/@/jtc1/@/sc22/@/wg21/}. By default, GCC provides some extensions to the C++ language; @xref{C++ Dialect Options,Options Controlling C++ Dialect}. Use of the @option{-std} option listed above will disable these extensions. You may also select an extended version of the C++ language explicitly with @option{-std=gnu++98} (for C++98 with GNU extensions) or -@option{-std=gnu++0x} (for C++0x with GNU extensions). The default, if +@option{-std=gnu++11} (for C++11 with GNU extensions). The default, if no C++ language dialect options are given, is @option{-std=gnu++98}. @section Objective-C and Objective-C++ languages -- 2.7.4