Add support for GCC 4.4.0's C++0x features

[SVN r52903]
This commit is contained in:
Beman Dawes
2009-05-11 14:11:27 +00:00
parent 83dfbd9ec5
commit 82f0426fa5
5 changed files with 49 additions and 19 deletions

View File

@ -2233,6 +2233,38 @@
</tr></thead>
<tbody>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">BOOST_NO_AUTO_DECLARATIONS</span></code>
</p>
</td>
<td>
<p>
The compiler does not support type deduction for variables declared
with the <code class="computeroutput"><span class="keyword">auto</span></code> keyword
(<code class="computeroutput"><span class="keyword">auto</span> <span class="identifier">var</span>
<span class="special">=</span> <span class="special">...;</span></code>).
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">BOOST_NO_AUTO_MULTIDECLARATIONS</span></code>
</p>
</td>
<td>
<p>
The compiler does not support type deduction for multiple variables
declared with the <code class="computeroutput"><span class="keyword">auto</span></code>
keyword (<code class="computeroutput"><span class="keyword">auto</span> <span class="identifier">var</span>
<span class="special">=</span> <span class="special">...,</span>
<span class="special">*</span><span class="identifier">ptr</span>
<span class="special">=</span> <span class="special">...;</span></code>).
</p>
</td>
</tr>
<tr>
<td>
<p>
<code class="computeroutput"><span class="identifier">BOOST_NO_CHAR16_T</span></code>

View File

@ -101,23 +101,15 @@
# endif
#endif
// C++0x features not implemented in any GCC version
//
// C++0x features
//
#define BOOST_NO_CHAR16_T
#define BOOST_NO_CHAR32_T
#define BOOST_NO_CONSTEXPR
#define BOOST_NO_DEFAULTED_FUNCTIONS
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_SCOPED_ENUMS
#define BOOST_NO_UNICODE_LITERALS
// See below for BOOST_NO_AUTO_DECLARATIONS
#define BOOST_NO_AUTO_MULTIDECLARATIONS
// C++0x features in 4.3.n and later
//
#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 2)) && defined(__GXX_EXPERIMENTAL_CXX0X__)
// C++0x features are only enabled when -std=c++0x or -std=gnu++0x are
// passed on the command line, which in turn defines
@ -140,9 +132,18 @@
# endif
#endif
#if !defined(__GXX_EXPERIMENTAL_CXX0X__) || __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4)
# define BOOST_NO_INITIALIZER_LISTS
// C++0x features in 4.4.n and later
//
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
# define BOOST_NO_AUTO_DECLARATIONS
# define BOOST_NO_AUTO_MULTIDECLARATIONS
# define BOOST_NO_CHAR16_T
# define BOOST_NO_CHAR32_T
# define BOOST_NO_DEFAULTED_FUNCTIONS
# define BOOST_NO_DELETED_FUNCTIONS
# define BOOST_NO_INITIALIZER_LISTS
# define BOOST_NO_SCOPED_ENUMS
# define BOOST_NO_UNICODE_LITERALS
#endif
// ConceptGCC compiler:

View File

@ -1,7 +1,7 @@
#
# Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND ***
# This file was automatically generated on Sat Mar 21 15:13:32 2009
# This file was automatically generated on Mon May 11 07:24:23 2009
# by libs/config/tools/generate.cpp
# Copyright John Maddock.
# Use, modification and distribution are subject to the
@ -14,10 +14,6 @@
path-constant DOT : . ;
include $(DOT)/options_v2.jam ;
project
: requirements
<include>.. ;
run ../config_info.cpp : : : <threading>single <toolset>msvc:<runtime-link>static <toolset>msvc:<link>static ;
run ../config_info.cpp : : : <threading>multi : config_info_threaded ;
run ../math_info.cpp : : : <toolset>borland:<runtime-link>static <toolset>borland:<link>static ;

View File

@ -1038,6 +1038,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_VOID_RETURNS);
// END GENERATED BLOCK
PRINT_MACRO(BOOST_INTEL);

View File

@ -1,4 +1,4 @@
// This file was automatically generated on Sat Mar 21 15:13:32 2009
// This file was automatically generated on Mon May 11 07:24:23 2009
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the