Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r71480 - in branches/release: boost/config boost/config/compiler boost/config/platform boost/config/stdlib libs/config libs/config/doc libs/config/doc/html libs/config/doc/html/boost_config libs/config/test libs/config/test/all libs/config/tools
From: john_at_[hidden]
Date: 2011-04-25 08:10:56


Author: johnmaddock
Date: 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
New Revision: 71480
URL: http://svn.boost.org/trac/boost/changeset/71480

Log:
Merge Boost.Config changes to release.
Added:
   branches/release/libs/config/test/config_test_c.c
      - copied unchanged from r71479, /trunk/libs/config/test/config_test_c.c
Removed:
   branches/release/libs/config/test/boost_has_concepts.ipp
   branches/release/libs/config/test/boost_no_0x_hdr_concepts.ipp
   branches/release/libs/config/test/boost_no_0x_hdr_container_concepts.ipp
   branches/release/libs/config/test/boost_no_0x_hdr_iterator_concepts.ipp
   branches/release/libs/config/test/boost_no_0x_hdr_memory_concepts.ipp
   branches/release/libs/config/test/boost_no_concepts.ipp
   branches/release/libs/config/test/has_concepts_fail.cpp
   branches/release/libs/config/test/has_concepts_pass.cpp
   branches/release/libs/config/test/no_0x_hdr_concepts_fail.cpp
   branches/release/libs/config/test/no_0x_hdr_concepts_pass.cpp
   branches/release/libs/config/test/no_0x_hdr_container_concepts_fail.cpp
   branches/release/libs/config/test/no_0x_hdr_container_concepts_pass.cpp
   branches/release/libs/config/test/no_0x_hdr_iterator_concepts_fail.cpp
   branches/release/libs/config/test/no_0x_hdr_iterator_concepts_pass.cpp
   branches/release/libs/config/test/no_0x_hdr_memory_concepts_fail.cpp
   branches/release/libs/config/test/no_0x_hdr_memory_concepts_pass.cpp
   branches/release/libs/config/test/no_concepts_fail.cpp
   branches/release/libs/config/test/no_concepts_pass.cpp
Properties modified:
   branches/release/boost/config/ (props changed)
   branches/release/libs/config/ (props changed)
Text files modified:
   branches/release/boost/config/compiler/borland.hpp | 8 +
   branches/release/boost/config/compiler/clang.hpp | 1
   branches/release/boost/config/compiler/codegear.hpp | 3
   branches/release/boost/config/compiler/common_edg.hpp | 1
   branches/release/boost/config/compiler/digitalmars.hpp | 3
   branches/release/boost/config/compiler/gcc.hpp | 36 ++++-----
   branches/release/boost/config/compiler/hp_acc.hpp | 1
   branches/release/boost/config/compiler/intel.hpp | 15 +++
   branches/release/boost/config/compiler/metrowerks.hpp | 1
   branches/release/boost/config/compiler/mpw.hpp | 1
   branches/release/boost/config/compiler/pathscale.hpp | 5 -
   branches/release/boost/config/compiler/pgi.hpp | 1
   branches/release/boost/config/compiler/sunpro_cc.hpp | 1
   branches/release/boost/config/compiler/vacpp.hpp | 1
   branches/release/boost/config/compiler/visualc.hpp | 3
   branches/release/boost/config/platform/linux.hpp | 5 +
   branches/release/boost/config/platform/macos.hpp | 9 +-
   branches/release/boost/config/platform/symbian.hpp | 7 +
   branches/release/boost/config/select_compiler_config.hpp | 27 -------
   branches/release/boost/config/select_stdlib_config.hpp | 6 +
   branches/release/boost/config/stdlib/dinkumware.hpp | 10 --
   branches/release/boost/config/stdlib/libcomo.hpp | 4 -
   branches/release/boost/config/stdlib/libcpp.hpp | 12 ++-
   branches/release/boost/config/stdlib/libstdcpp3.hpp | 28 +++++--
   branches/release/boost/config/stdlib/modena.hpp | 4 -
   branches/release/boost/config/stdlib/msl.hpp | 4 -
   branches/release/boost/config/stdlib/roguewave.hpp | 12 +--
   branches/release/boost/config/stdlib/sgi.hpp | 4 -
   branches/release/boost/config/stdlib/stlport.hpp | 4 -
   branches/release/boost/config/stdlib/vacpp.hpp | 4 -
   branches/release/boost/config/suffix.hpp | 13 ++-
   branches/release/boost/config/warning_disable.hpp | 2
   branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html | 140 +++++++++++++--------------------------
   branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html | 8 +-
   branches/release/libs/config/doc/html/index.html | 16 +--
   branches/release/libs/config/doc/macro_reference.qbk | 17 +++-
   branches/release/libs/config/test/Jamfile.v2 | 3
   branches/release/libs/config/test/all/Jamfile.v2 | 23 +-----
   branches/release/libs/config/test/boost_no_0x_hdr_array.ipp | 3
   branches/release/libs/config/test/boost_no_0x_hdr_chrono.ipp | 9 ++
   branches/release/libs/config/test/boost_no_0x_hdr_codecvt.ipp | 3
   branches/release/libs/config/test/boost_no_0x_hdr_condition_variable.ipp | 2
   branches/release/libs/config/test/boost_no_0x_hdr_forward_list.ipp | 3
   branches/release/libs/config/test/boost_no_0x_hdr_future.ipp | 13 +++
   branches/release/libs/config/test/boost_no_0x_hdr_initializer_list.ipp | 5 +
   branches/release/libs/config/test/boost_no_0x_hdr_mutex.ipp | 4 +
   branches/release/libs/config/test/boost_no_0x_hdr_random.ipp | 9 ++
   branches/release/libs/config/test/boost_no_0x_hdr_ratio.ipp | 15 ++++
   branches/release/libs/config/test/boost_no_0x_hdr_regex.ipp | 2
   branches/release/libs/config/test/boost_no_0x_hdr_system_error.ipp | 4 +
   branches/release/libs/config/test/boost_no_0x_hdr_thread.ipp | 5 +
   branches/release/libs/config/test/boost_no_0x_hdr_type_traits.ipp | 84 ++++++++++++++++++++++++
   branches/release/libs/config/test/boost_no_0x_hdr_unordered_map.ipp | 4
   branches/release/libs/config/test/boost_no_0x_hdr_unordered_set.ipp | 4
   branches/release/libs/config/test/boost_no_constexpr.ipp | 20 +++++
   branches/release/libs/config/test/boost_no_defaulted_functions.ipp | 4 +
   branches/release/libs/config/test/boost_no_deleted_functions.ipp | 4 +
   branches/release/libs/config/test/boost_no_explicit_cvt_ops.ipp | 4 +
   branches/release/libs/config/test/boost_no_fenv_h.ipp | 62 ++++++-----------
   branches/release/libs/config/test/boost_no_initializer_lists.ipp | 1
   branches/release/libs/config/test/boost_no_lambdas.ipp | 4 +
   branches/release/libs/config/test/boost_no_scoped_enums.ipp | 9 ++
   branches/release/libs/config/test/config_info.cpp | 9 -
   branches/release/libs/config/test/config_test.cpp | 72 +++-----------------
   branches/release/libs/config/tools/generate.cpp | 30 ++++----
   65 files changed, 435 insertions(+), 396 deletions(-)

Modified: branches/release/boost/config/compiler/borland.hpp
==============================================================================
--- branches/release/boost/config/compiler/borland.hpp (original)
+++ branches/release/boost/config/compiler/borland.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -56,8 +56,13 @@
 # define BOOST_NO_CV_VOID_SPECIALIZATIONS
 # define BOOST_NO_DEDUCED_TYPENAME
 // workaround for missing WCHAR_MAX/WCHAR_MIN:
+#ifdef __cplusplus
 #include <climits>
 #include <cwchar>
+#else
+#include <limits.h>
+#include <wchar.h>
+#endif // __cplusplus
 #ifndef WCHAR_MAX
 # define WCHAR_MAX 0xffff
 #endif
@@ -69,7 +74,7 @@
 // Borland C++ Builder 6 and below:
 #if (__BORLANDC__ <= 0x564)
 
-# ifdef NDEBUG
+# if defined(NDEBUG) && defined(__cplusplus)
       // fix broken <cstring> so that Boost.test works:
 # include <cstring>
 # undef strcmp
@@ -166,7 +171,6 @@
 
 #define BOOST_NO_AUTO_DECLARATIONS
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DEFAULTED_FUNCTIONS
 #define BOOST_NO_DELETED_FUNCTIONS

Modified: branches/release/boost/config/compiler/clang.hpp
==============================================================================
--- branches/release/boost/config/compiler/clang.hpp (original)
+++ branches/release/boost/config/compiler/clang.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -29,7 +29,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 
 #if !__has_feature(cxx_decltype)

Modified: branches/release/boost/config/compiler/codegear.hpp
==============================================================================
--- branches/release/boost/config/compiler/codegear.hpp (original)
+++ branches/release/boost/config/compiler/codegear.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -60,7 +60,7 @@
 // (Niels Dekker, LKEB, April 2010)
 # define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
 
-# ifdef NDEBUG
+# if defined(NDEBUG) && defined(__cplusplus)
       // fix broken <cstring> so that Boost.test works:
 # include <cstring>
 # undef strcmp
@@ -93,7 +93,6 @@
 
 #define BOOST_NO_AUTO_DECLARATIONS
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DEFAULTED_FUNCTIONS
 #define BOOST_NO_DELETED_FUNCTIONS

Modified: branches/release/boost/config/compiler/common_edg.hpp
==============================================================================
--- branches/release/boost/config/compiler/common_edg.hpp (original)
+++ branches/release/boost/config/compiler/common_edg.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -74,7 +74,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/digitalmars.hpp
==============================================================================
--- branches/release/boost/config/compiler/digitalmars.hpp (original)
+++ branches/release/boost/config/compiler/digitalmars.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -44,7 +44,9 @@
 //
 // Is this really the best way to detect whether the std lib is in namespace std?
 //
+#ifdef __cplusplus
 #include <cstddef>
+#endif
 #if !defined(__STL_IMPORT_VENDOR_CSTD) && !defined(_STLP_IMPORT_VENDOR_CSTD)
 # define BOOST_NO_STDC_NAMESPACE
 #endif
@@ -62,7 +64,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/gcc.hpp
==============================================================================
--- branches/release/boost/config/compiler/gcc.hpp (original)
+++ branches/release/boost/config/compiler/gcc.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -168,7 +168,7 @@
 
 // Variadic templates compiler:
 // http://www.generic-programming.org/~dgregor/cpp/variadic-templates.html
-# ifdef __VARIADIC_TEMPLATES
+# if defined(__VARIADIC_TEMPLATES) || (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4) && defined(__GXX_EXPERIMENTAL_CXX0X__))
 # define BOOST_HAS_VARIADIC_TMPL
 # else
 # define BOOST_NO_VARIADIC_TEMPLATES
@@ -182,25 +182,16 @@
 # define BOOST_NO_AUTO_MULTIDECLARATIONS
 # define BOOST_NO_CHAR16_T
 # define BOOST_NO_CHAR32_T
+# define BOOST_NO_INITIALIZER_LISTS
 # define BOOST_NO_DEFAULTED_FUNCTIONS
 # define BOOST_NO_DELETED_FUNCTIONS
-# define BOOST_NO_INITIALIZER_LISTS
-# define BOOST_NO_SCOPED_ENUMS
 #endif
 
 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 4)
 # define BOOST_NO_SFINAE_EXPR
 #endif
 
-// C++0x features in 4.4.1 and later
-//
-#if (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__ < 40401) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
-// scoped enums have a serious bug in 4.4.0, so define BOOST_NO_SCOPED_ENUMS before 4.4.1
-// See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38064
-# define BOOST_NO_SCOPED_ENUMS
-#endif
-
-// C++0x features in 4.5.n and later
+// C++0x features in 4.5.0 and later
 //
 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
 # define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
@@ -209,27 +200,32 @@
 # define BOOST_NO_UNICODE_LITERALS
 #endif
 
-// C++0x features in 4.5.n and later
+// C++0x features in 4.5.1 and later
+//
+#if (__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__ < 40501) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
+// scoped enums have a serious bug in 4.4.0, so define BOOST_NO_SCOPED_ENUMS before 4.5.1
+// See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38064
+# define BOOST_NO_SCOPED_ENUMS
+#endif
+
+// C++0x features in 4.6.n and later
 //
 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_NULLPTR
 #endif
 
+#ifndef BOOST_COMPILER
+# define BOOST_COMPILER "GNU C++ version " __VERSION__
+#endif
+
 // ConceptGCC compiler:
 // http://www.generic-programming.org/software/ConceptGCC/
 #ifdef __GXX_CONCEPTS__
 # define BOOST_HAS_CONCEPTS
 # define BOOST_COMPILER "ConceptGCC version " __VERSION__
-#else
-# define BOOST_NO_CONCEPTS
 #endif
 
-#ifndef BOOST_COMPILER
-# define BOOST_COMPILER "GNU C++ version " __VERSION__
-#endif
-
-//
 // versions check:
 // we don't know gcc prior to version 2.90:
 #if (__GNUC__ == 2) && (__GNUC_MINOR__ < 90)

Modified: branches/release/boost/config/compiler/hp_acc.hpp
==============================================================================
--- branches/release/boost/config/compiler/hp_acc.hpp (original)
+++ branches/release/boost/config/compiler/hp_acc.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -96,7 +96,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/intel.hpp
==============================================================================
--- branches/release/boost/config/compiler/intel.hpp (original)
+++ branches/release/boost/config/compiler/intel.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -121,6 +121,7 @@
 // in type_traits code among other things, getting this correct
 // for the Intel compiler is actually remarkably fragile and tricky:
 //
+#ifdef __cplusplus
 #if defined(BOOST_NO_INTRINSIC_WCHAR_T)
 #include <cwchar>
 template< typename T > struct assert_no_intrinsic_wchar_t;
@@ -134,8 +135,9 @@
 // if you see an error here then define BOOST_NO_INTRINSIC_WCHAR_T on the command line:
 template<> struct assert_intrinsic_wchar_t<unsigned short> {};
 #endif
+#endif
 
-#if _MSC_VER+0 >= 1000
+#if defined(_MSC_VER) && (_MSC_VER+0 >= 1000)
 # if _MSC_VER >= 1200
 # define BOOST_HAS_MS_INT64
 # endif
@@ -209,7 +211,7 @@
 
 #if defined(BOOST_INTEL_STDCXX0X) && (BOOST_INTEL_CXX_VERSION >= 1200)
 # undef BOOST_NO_RVALUE_REFERENCES
-# undef BOOST_NO_SCOPED_ENUMS
+//# undef BOOST_NO_SCOPED_ENUMS // doesn't really work!!
 # undef BOOST_NO_DELETED_FUNCTIONS
 # undef BOOST_NO_DEFAULTED_FUNCTIONS
 # undef BOOST_NO_LAMBDAS
@@ -218,9 +220,16 @@
 # undef BOOST_NO_AUTO_MULTIDECLARATIONS
 #endif
 
+#if (BOOST_INTEL_CXX_VERSION < 1200)
+//
+// fenv.h appears not to work with Intel prior to 12.0:
+//
+# define BOOST_NO_FENV_H
+#endif
+
 //
 // last known and checked version:
-#if (BOOST_INTEL_CXX_VERSION > 1110)
+#if (BOOST_INTEL_CXX_VERSION > 1200)
 # if defined(BOOST_ASSERT_CONFIG)
 # error "Unknown compiler version - please run the configure tests and report the results"
 # elif defined(_MSC_VER)

Modified: branches/release/boost/config/compiler/metrowerks.hpp
==============================================================================
--- branches/release/boost/config/compiler/metrowerks.hpp (original)
+++ branches/release/boost/config/compiler/metrowerks.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -96,7 +96,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/mpw.hpp
==============================================================================
--- branches/release/boost/config/compiler/mpw.hpp (original)
+++ branches/release/boost/config/compiler/mpw.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -44,7 +44,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/pathscale.hpp
==============================================================================
--- branches/release/boost/config/compiler/pathscale.hpp (original)
+++ branches/release/boost/config/compiler/pathscale.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -52,7 +52,6 @@
 # define BOOST_NO_DEFAULTED_FUNCTIONS
 # define BOOST_NO_DECLTYPE
 # define BOOST_NO_CONSTEXPR
-# define BOOST_NO_CONCEPTS
 # define BOOST_NO_COMPLETE_VALUE_INITIALIZATION
 # define BOOST_NO_CHAR32_T
 # define BOOST_NO_CHAR16_T
@@ -68,14 +67,10 @@
 # define BOOST_NO_0X_HDR_RATIO
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_MUTEX
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_FORWARD_LIST
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CODECVT
 # define BOOST_NO_0X_HDR_CHRONO
 #endif

Modified: branches/release/boost/config/compiler/pgi.hpp
==============================================================================
--- branches/release/boost/config/compiler/pgi.hpp (original)
+++ branches/release/boost/config/compiler/pgi.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -51,7 +51,6 @@
 //
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/sunpro_cc.hpp
==============================================================================
--- branches/release/boost/config/compiler/sunpro_cc.hpp (original)
+++ branches/release/boost/config/compiler/sunpro_cc.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -103,7 +103,6 @@
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DECLTYPE
 #define BOOST_NO_DEFAULTED_FUNCTIONS

Modified: branches/release/boost/config/compiler/vacpp.hpp
==============================================================================
--- branches/release/boost/config/compiler/vacpp.hpp (original)
+++ branches/release/boost/config/compiler/vacpp.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -78,7 +78,6 @@
 # define BOOST_NO_CHAR16_T
 # define BOOST_NO_CHAR32_T
 #endif
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #if ! __IBMCPP_DECLTYPE
 # define BOOST_NO_DECLTYPE

Modified: branches/release/boost/config/compiler/visualc.hpp
==============================================================================
--- branches/release/boost/config/compiler/visualc.hpp (original)
+++ branches/release/boost/config/compiler/visualc.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -179,6 +179,7 @@
 #define BOOST_NO_RVALUE_REFERENCES
 #define BOOST_NO_STATIC_ASSERT
 #define BOOST_NO_NULLPTR
+#define BOOST_NO_DECLTYPE
 #endif // _MSC_VER < 1600
 
 #if _MSC_VER >= 1600
@@ -188,10 +189,8 @@
 // C++0x features not supported by any versions
 #define BOOST_NO_CHAR16_T
 #define BOOST_NO_CHAR32_T
-#define BOOST_NO_CONCEPTS
 #define BOOST_NO_CONSTEXPR
 #define BOOST_NO_DEFAULTED_FUNCTIONS
-#define BOOST_NO_DECLTYPE
 #define BOOST_NO_DELETED_FUNCTIONS
 #define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
 #define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS

Modified: branches/release/boost/config/platform/linux.hpp
==============================================================================
--- branches/release/boost/config/platform/linux.hpp (original)
+++ branches/release/boost/config/platform/linux.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -11,7 +11,11 @@
 #define BOOST_PLATFORM "linux"
 
 // make sure we have __GLIBC_PREREQ if available at all
+#ifdef __cplusplus
 #include <cstdlib>
+#else
+#include <stdlib.h>
+#endif
 
 //
 // <stdint.h> added to glibc 2.1.1
@@ -68,6 +72,7 @@
 // boilerplate code:
 #define BOOST_HAS_UNISTD_H
 #include <boost/config/posix_features.hpp>
+#define BOOST_HAS_PTHREAD_YIELD
 
 #ifndef __GNUC__
 //

Modified: branches/release/boost/config/platform/macos.hpp
==============================================================================
--- branches/release/boost/config/platform/macos.hpp (original)
+++ branches/release/boost/config/platform/macos.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -64,16 +64,17 @@
 # if ( defined(TARGET_API_MAC_CARBON) && TARGET_API_MAC_CARBON ) || ( defined(TARGET_CARBON) && TARGET_CARBON )
 
 # if !defined(BOOST_HAS_PTHREADS)
-# define BOOST_HAS_MPTASKS
+// MPTasks support is deprecated/removed from Boost:
+//# define BOOST_HAS_MPTASKS
 # elif ( __dest_os == __mac_os_x )
 // We are doing a Carbon/Mach-O/MSL build which has pthreads, but only the
 // gettimeofday and no posix.
 # define BOOST_HAS_GETTIMEOFDAY
 # endif
 
-// The MP task implementation of Boost Threads aims to replace MP-unsafe
-// parts of the MSL, so we turn on threads unconditionally.
-# define BOOST_HAS_THREADS
+#ifdef BOOST_HAS_PTHREADS
+# define BOOST_HAS_THREADS
+#endif
 
 // The remote call manager depends on this.
 # define BOOST_BIND_ENABLE_PASCAL

Modified: branches/release/boost/config/platform/symbian.hpp
==============================================================================
--- branches/release/boost/config/platform/symbian.hpp (original)
+++ branches/release/boost/config/platform/symbian.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -18,8 +18,11 @@
 // Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL
 # define BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK
 // make sure we have __GLIBC_PREREQ if available at all
-# include <cstdlib>
-// boilerplate code:
+#ifdef __cplusplus
+#include <cstdlib>
+#else
+#include <stdlib.h>
+#endif// boilerplate code:
 # define BOOST_HAS_UNISTD_H
 # include <boost/config/posix_features.hpp>
 // S60 SDK defines _POSIX_VERSION as POSIX.1

Modified: branches/release/boost/config/select_compiler_config.hpp
==============================================================================
--- branches/release/boost/config/select_compiler_config.hpp (original)
+++ branches/release/boost/config/select_compiler_config.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -10,33 +10,6 @@
 
 // See http://www.boost.org/ for most recent version.
 
-
-// one identification macro for each of the
-// compilers we support:
-
-# define BOOST_CXX_GCCXML 0
-# define BOOST_CXX_NVCC 0
-# define BOOST_CXX_COMO 0
-# define BOOST_CXX_PATHSCALE 0
-# define BOOST_CXX_CLANG 0
-# define BOOST_CXX_DMC 0
-# define BOOST_CXX_INTEL 0
-# define BOOST_CXX_GNUC 0
-# define BOOST_CXX_KCC 0
-# define BOOST_CXX_SGI 0
-# define BOOST_CXX_TRU64 0
-# define BOOST_CXX_GHS 0
-# define BOOST_CXX_BORLAND 0
-# define BOOST_CXX_CW 0
-# define BOOST_CXX_SUNPRO 0
-# define BOOST_CXX_HPACC 0
-# define BOOST_CXX_MPW 0
-# define BOOST_CXX_IBMCPP 0
-# define BOOST_CXX_MSVC 0
-# define BOOST_CXX_PGI 0
-# define BOOST_CXX_NVCC 0
-
-
 // locate which compiler we are using and define
 // BOOST_COMPILER_CONFIG as needed:
 

Modified: branches/release/boost/config/select_stdlib_config.hpp
==============================================================================
--- branches/release/boost/config/select_stdlib_config.hpp (original)
+++ branches/release/boost/config/select_stdlib_config.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -14,7 +14,11 @@
 // First include <cstddef> to determine if some version of STLport is in use as the std lib
 // (do not rely on this header being included since users can short-circuit this header
 // if they know whose std lib they are using.)
-#include <cstddef>
+#ifdef __cplusplus
+# include <cstddef>
+#else
+# include <stddef.h>
+#endif
 
 #if defined(__SGI_STL_PORT) || defined(_STLPORT_VERSION)
 // STLPort library; this _must_ come first, otherwise since

Modified: branches/release/boost/config/stdlib/dinkumware.hpp
==============================================================================
--- branches/release/boost/config/stdlib/dinkumware.hpp (original)
+++ branches/release/boost/config/stdlib/dinkumware.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -101,7 +101,6 @@
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_REGEX
 # define BOOST_NO_0X_HDR_SYSTEM_ERROR
-# define BOOST_NO_0X_HDR_TYPE_TRAITS
 # define BOOST_NO_STD_UNORDERED // deprecated; see following
 # define BOOST_NO_0X_HDR_UNORDERED_MAP
 # define BOOST_NO_0X_HDR_UNORDERED_SET
@@ -113,16 +112,13 @@
 #if !defined(_HAS_TR1_IMPORTS) && !defined(BOOST_NO_0X_HDR_TUPLE)
 # define BOOST_NO_0X_HDR_TUPLE
 #endif
-
-// C++0x headers not yet implemented
 //
+// C++0x headers not yet (fully) implemented:
+//
+# define BOOST_NO_0X_HDR_TYPE_TRAITS
 # define BOOST_NO_0X_HDR_CHRONO
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FUTURE
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RATIO
 # define BOOST_NO_0X_HDR_THREAD

Modified: branches/release/boost/config/stdlib/libcomo.hpp
==============================================================================
--- branches/release/boost/config/stdlib/libcomo.hpp (original)
+++ branches/release/boost/config/stdlib/libcomo.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -38,14 +38,10 @@
 # define BOOST_NO_0X_HDR_ARRAY
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/stdlib/libcpp.hpp
==============================================================================
--- branches/release/boost/config/stdlib/libcpp.hpp (original)
+++ branches/release/boost/config/stdlib/libcpp.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -19,15 +19,17 @@
 
 #define BOOST_HAS_THREADS
 
-#define BOOST_NO_0X_HDR_CONCEPTS
-#define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-#define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-#define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-
 #ifdef _LIBCPP_HAS_NO_VARIADICS
 # define BOOST_NO_0X_HDR_TUPLE
 #endif
 
+//
+// These appear to be unusable/incomplete so far:
+//
+# define BOOST_NO_0X_HDR_CHRONO
+# define BOOST_NO_0X_HDR_FUTURE
+# define BOOST_NO_0X_HDR_TYPE_TRAITS
+
 // libc++ uses a non-standard messages_base
 #define BOOST_NO_STD_MESSAGES
 

Modified: branches/release/boost/config/stdlib/libstdcpp3.hpp
==============================================================================
--- branches/release/boost/config/stdlib/libstdcpp3.hpp (original)
+++ branches/release/boost/config/stdlib/libstdcpp3.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -104,10 +104,8 @@
 //
 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 3) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
 # define BOOST_NO_0X_HDR_ARRAY
-# define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_REGEX
 # define BOOST_NO_0X_HDR_TUPLE
-# define BOOST_NO_0X_HDR_TYPE_TRAITS
 # define BOOST_NO_STD_UNORDERED // deprecated; see following
 # define BOOST_NO_0X_HDR_UNORDERED_MAP
 # define BOOST_NO_0X_HDR_UNORDERED_SET
@@ -123,23 +121,33 @@
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RATIO
 # define BOOST_NO_0X_HDR_SYSTEM_ERROR
-# define BOOST_NO_0X_HDR_THREAD
+#else
+# define BOOST_HAS_TR1_COMPLEX_INVERSE_TRIG
+# define BOOST_HAS_TR1_COMPLEX_OVERLOADS
+#endif
+
+#if (!defined(_GLIBCXX_HAS_GTHREADS) || !defined(_GLIBCXX_USE_C99_STDINT_TR1)) && (!defined(BOOST_NO_0X_HDR_CONDITION_VARIABLE) || !defined(BOOST_NO_0X_HDR_MUTEX))
+# define BOOST_NO_0X_HDR_CONDITION_VARIABLE
+# define BOOST_NO_0X_HDR_MUTEX
 #endif
 
 // C++0x features in GCC 4.5.0 and later
 //
 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
 # define BOOST_NO_NUMERIC_LIMITS_LOWEST
+# define BOOST_NO_0X_HDR_FUTURE
+# define BOOST_NO_0X_HDR_RANDOM
 #endif
 
-// C++0x headers not yet implemented
+// C++0x features in GCC 4.5.0 and later
 //
-# define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-# define BOOST_NO_0X_HDR_FUTURE
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
+#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
 # define BOOST_NO_0X_HDR_TYPEINDEX
+#endif
+// C++0x headers not yet (fully!) implemented
+//
+# define BOOST_NO_0X_HDR_THREAD
+# define BOOST_NO_0X_HDR_TYPE_TRAITS
+# define BOOST_NO_0X_HDR_CODECVT
 
 // --- end ---

Modified: branches/release/boost/config/stdlib/modena.hpp
==============================================================================
--- branches/release/boost/config/stdlib/modena.hpp (original)
+++ branches/release/boost/config/stdlib/modena.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -27,14 +27,10 @@
 # define BOOST_NO_0X_HDR_ARRAY
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/stdlib/msl.hpp
==============================================================================
--- branches/release/boost/config/stdlib/msl.hpp (original)
+++ branches/release/boost/config/stdlib/msl.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -51,14 +51,10 @@
 # define BOOST_NO_0X_HDR_ARRAY
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/stdlib/roguewave.hpp
==============================================================================
--- branches/release/boost/config/stdlib/roguewave.hpp (original)
+++ branches/release/boost/config/stdlib/roguewave.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -154,22 +154,20 @@
 # endif
 #endif
 
-// C++0x headers not yet implemented
-//
 #if _RWSTD_VER < 0x05000000
 # define BOOST_NO_0X_HDR_ARRAY
-# define BOOST_NO_0X_HDR_TYPE_TRAITS
 #endif
+// type_traits header is incomplete:
+# define BOOST_NO_0X_HDR_TYPE_TRAITS
+//
+// C++0x headers not yet implemented
+//
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/stdlib/sgi.hpp
==============================================================================
--- branches/release/boost/config/stdlib/sgi.hpp (original)
+++ branches/release/boost/config/stdlib/sgi.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -121,14 +121,10 @@
 # define BOOST_NO_0X_HDR_ARRAY
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/stdlib/stlport.hpp
==============================================================================
--- branches/release/boost/config/stdlib/stlport.hpp (original)
+++ branches/release/boost/config/stdlib/stlport.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -215,14 +215,10 @@
 # define BOOST_NO_0X_HDR_ARRAY
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/stdlib/vacpp.hpp
==============================================================================
--- branches/release/boost/config/stdlib/vacpp.hpp (original)
+++ branches/release/boost/config/stdlib/vacpp.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -27,14 +27,10 @@
 # define BOOST_NO_0X_HDR_ARRAY
 # define BOOST_NO_0X_HDR_CHRONO
 # define BOOST_NO_0X_HDR_CODECVT
-# define BOOST_NO_0X_HDR_CONCEPTS
 # define BOOST_NO_0X_HDR_CONDITION_VARIABLE
-# define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
 # define BOOST_NO_0X_HDR_FORWARD_LIST
 # define BOOST_NO_0X_HDR_FUTURE
 # define BOOST_NO_0X_HDR_INITIALIZER_LIST
-# define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-# define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RANDOM
 # define BOOST_NO_0X_HDR_RATIO

Modified: branches/release/boost/config/suffix.hpp
==============================================================================
--- branches/release/boost/config/suffix.hpp (original)
+++ branches/release/boost/config/suffix.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -341,6 +341,9 @@
 #if defined(BOOST_NO_0X_HDR_INITIALIZER_LIST) && !defined(BOOST_NO_INITIALIZER_LISTS)
 # define BOOST_NO_INITIALIZER_LISTS
 #endif
+#if defined(BOOST_NO_INITIALIZER_LISTS) && !defined(BOOST_NO_0X_HDR_INITIALIZER_LIST)
+# define BOOST_NO_0X_HDR_INITIALIZER_LIST
+#endif
 
 //
 // Set BOOST_HAS_RVALUE_REFS when BOOST_NO_RVALUE_REFERENCES is not defined
@@ -376,7 +379,7 @@
 // works as expected with standard conforming compilers. The resulting
 // double inclusion of <cstddef> is harmless.
 
-# ifdef BOOST_NO_STDC_NAMESPACE
+# if defined(BOOST_NO_STDC_NAMESPACE) && defined(__cplusplus)
 # include <cstddef>
     namespace std { using ::ptrdiff_t; using ::size_t; }
 # endif
@@ -395,7 +398,7 @@
 
 // BOOST_NO_STD_MIN_MAX workaround -----------------------------------------//
 
-# ifdef BOOST_NO_STD_MIN_MAX
+# if defined(BOOST_NO_STD_MIN_MAX) && defined(__cplusplus)
 
 namespace std {
   template <class _Tp>
@@ -506,7 +509,7 @@
 // but it's use may generate either warnings (with -ansi), or errors
 // (with -pedantic -ansi) unless it's use is prefixed by __extension__
 //
-#if defined(BOOST_HAS_LONG_LONG)
+#if defined(BOOST_HAS_LONG_LONG) && defined(__cplusplus)
 namespace boost{
 # ifdef __GNUC__
    __extension__ typedef long long long_long_type;
@@ -560,7 +563,7 @@
 //
 
 
-#if defined BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS
+#if defined(BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS) && defined(__cplusplus)
 
 # include "boost/type.hpp"
 # include "boost/non_type.hpp"
@@ -598,7 +601,7 @@
 
 // When BOOST_NO_STD_TYPEINFO is defined, we can just import
 // the global definition into std namespace:
-#ifdef BOOST_NO_STD_TYPEINFO
+#if defined(BOOST_NO_STD_TYPEINFO) && defined(__cplusplus)
 #include <typeinfo>
 namespace std{ using ::type_info; }
 #endif

Modified: branches/release/boost/config/warning_disable.hpp
==============================================================================
--- branches/release/boost/config/warning_disable.hpp (original)
+++ branches/release/boost/config/warning_disable.hpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -23,7 +23,7 @@
 // Note that THIS HEADER MUST NOT INCLUDE ANY OTHER HEADERS:
 // not even std library ones! Doing so may turn the warning
 // off too late to be of any use. For example the VC++ C4996
-// warning can be omitted from <iosfwd> if that header is included
+// warning can be emitted from <iosfwd> if that header is included
 // before or by this one :-(
 //
 

Modified: branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html
==============================================================================
--- branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html (original)
+++ branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -42,14 +42,12 @@
 <dt><span class="section"><a href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_for_libraries_with_separate_source_code">Macros
       for libraries with separate source code</a></span></dt>
 </dl></div>
-<a name="config_defects"></a><p>
- </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.boost_macro_reference.macros_that_describe_defects"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_defects" title="Macros that describe defects">Macros
       that describe defects</a>
 </h3></div></div></div>
-<p>
+<a name="config_defects"></a><p>
         The following macros all describe features that are required by the C++ standard,
         if one of the following macros is defined, then it represents a defect in
         the compiler's conformance with the standard.
@@ -284,6 +282,26 @@
 <tr>
 <td>
                 <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NO_FENV_H</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Platform, Standard library
+ </p>
+ </td>
+<td>
+ <p>
+ The C standard library doesn't provide <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">fenv</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code>.
+ <boost/detail/fenv.hpp>
+ should be included instead of <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">fenv</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code>
+ for maximum portability on platforms which do provide <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">fenv</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code>.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                   <code class="computeroutput"><span class="identifier">BOOST_NO_DEPENDENT_NESTED_DERIVATIONS</span></code>
                 </p>
               </td>
@@ -1306,14 +1324,12 @@
 </tbody>
 </table></div>
 </div>
-<a name="config_features"></a><p>
- </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.boost_macro_reference.macros_that_describe_optional_features"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.macros_that_describe_optional_features" title="Macros that describe optional features">Macros
       that describe optional features</a>
 </h3></div></div></div>
-<p>
+<a name="config_features"></a><p>
         The following macros describe features that are not required by the C++ standard.
         The macro is only defined if the feature is present.
       </p>
@@ -1697,26 +1713,6 @@
 <tr>
 <td>
                 <p>
- <code class="computeroutput"><span class="identifier">BOOST_HAS_FENV_H</span></code>
- </p>
- </td>
-<td>
- <p>
- Platform, Standard library
- </p>
- </td>
-<td>
- <p>
- The platform has a <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">fenv</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code>.
- <boost/detail/fenv.hpp>
- should be included instead of <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">fenv</span><span class="special">.</span><span class="identifier">h</span><span class="special">&gt;</span></code>
- for maximum portability.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
                   <code class="computeroutput"><span class="identifier">BOOST_HAS_STDINT_H</span></code>
                 </p>
               </td>
@@ -2327,18 +2323,6 @@
 <tr>
 <td>
                 <p>
- <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_CONCEPTS</span></code>
- </p>
- </td>
-<td>
- <p>
- The standard library does not provide header &lt;concepts&gt;.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
                   <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_CONDITION_VARIABLE</span></code>
                 </p>
               </td>
@@ -2351,18 +2335,6 @@
 <tr>
 <td>
                 <p>
- <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_CONTAINER_CONCEPTS</span></code>
- </p>
- </td>
-<td>
- <p>
- The standard library does not provide header &lt;container_concepts&gt;.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
                   <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_FORWARD_LIST</span></code>
                 </p>
               </td>
@@ -2399,30 +2371,6 @@
 <tr>
 <td>
                 <p>
- <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_ITERATOR_CONCEPTS</span></code>
- </p>
- </td>
-<td>
- <p>
- The standard library does not provide header &lt;iterator_concepts&gt;.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
- <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_MEMORY_CONCEPTS</span></code>
- </p>
- </td>
-<td>
- <p>
- The standard library does not provide header &lt;memory_concepts&gt;.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
                   <code class="computeroutput"><span class="identifier">BOOST_NO_0X_HDR_MUTEX</span></code>
                 </p>
               </td>
@@ -2611,18 +2559,6 @@
 <tr>
 <td>
                 <p>
- <code class="computeroutput"><span class="identifier">BOOST_NO_CONCEPTS</span></code>
- </p>
- </td>
-<td>
- <p>
- The compiler does not support Concepts.
- </p>
- </td>
-</tr>
-<tr>
-<td>
- <p>
                   <code class="computeroutput"><span class="identifier">BOOST_NO_TEMPLATE_ALIASES</span></code>
                 </p>
               </td>
@@ -2883,14 +2819,12 @@
 </tbody>
 </table></div>
 </div>
-<a name="config_helpers"></a><p>
- </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.boost_macro_reference.boost_helper_macros"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.boost_helper_macros" title="Boost Helper Macros">Boost
       Helper Macros</a>
 </h3></div></div></div>
-<p>
+<a name="config_helpers"></a><p>
         The following macros are either simple helpers, or macros that provide workarounds
         for compiler/standard library defects.
       </p>
@@ -2962,6 +2896,30 @@
 <tr>
 <td>
                 <p>
+ <code class="computeroutput"><span class="identifier">BOOST_PREVENT_MACRO_SUBSTITUTION</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Sometimes you have a function name with the same name as a C macro,
+ for example "min" and "max" member functions,
+ in which case one can prevent the function being expanded as a
+ macro using:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="identifier">someclass</span><span class="special">.</span><span class="identifier">min</span> <span class="identifier">BOOST_PREVENT_MACRO_SUBSTITUTION</span><span class="special">(</span><span class="identifier">arg1</span><span class="special">,</span> <span class="identifier">arg2</span><span class="special">);</span>
+</pre>
+<p>
+ The following also works in most, but not all, contexts:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="special">(</span><span class="identifier">someclass</span><span class="special">.</span><span class="identifier">max</span><span class="special">)(</span><span class="identifier">arg1</span><span class="special">,</span> <span class="identifier">arg2</span><span class="special">);</span>
+</pre>
+<p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                   <code class="computeroutput"><span class="identifier">BOOST_DEDUCED_TYPENAME</span></code>
                 </p>
               </td>
@@ -3294,14 +3252,12 @@
 </tbody>
 </table></div>
 </div>
-<a name="config_info_macros"></a><p>
- </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.boost_macro_reference.boost_informational_macros"></a><a class="link" href="boost_macro_reference.html#boost_config.boost_macro_reference.boost_informational_macros" title="Boost Informational Macros">Boost
       Informational Macros</a>
 </h3></div></div></div>
-<p>
+<a name="config_info_macros"></a><p>
         The following macros describe boost features; these are, generally speaking
         the only boost macros that should be tested in user code.
       </p>

Modified: branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html
==============================================================================
--- branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html (original)
+++ branches/release/libs/config/doc/html/boost_config/guidelines_for_boost_authors.html 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -28,8 +28,8 @@
     Boost Authors</a>
 </h2></div></div></div>
 <div class="toc"><dl>
-<dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings">
- Disabling Compiler Warnings</a></span></dt>
+<dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings">Disabling
+ Compiler Warnings</a></span></dt>
 <dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_defect_macros">Adding
       New Defect Macros</a></span></dt>
 <dt><span class="section"><a href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_feature_test_macros">Adding
@@ -105,8 +105,8 @@
 </ul></div>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
-<a name="boost_config.guidelines_for_boost_authors.warnings"></a><a class="link" href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings" title="Disabling Compiler Warnings">
- Disabling Compiler Warnings</a>
+<a name="boost_config.guidelines_for_boost_authors.warnings"></a><a class="link" href="guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings" title="Disabling Compiler Warnings">Disabling
+ Compiler Warnings</a>
 </h3></div></div></div>
 <p>
         The header <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">warning_disable</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>

Modified: branches/release/libs/config/doc/html/index.html
==============================================================================
--- branches/release/libs/config/doc/html/index.html (original)
+++ branches/release/libs/config/doc/html/index.html 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -28,7 +28,7 @@
 </h3></div></div></div>
 <div><p class="copyright">Copyright &#169; 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock</p></div>
 <div><div class="legalnotice">
-<a name="id663915"></a><p>
+<a name="id1006373"></a><p>
         Distributed under the Boost Software License, Version 1.0. (See accompanying
         file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
       </p>
@@ -75,8 +75,8 @@
 <dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html">Guidelines for
     Boost Authors</a></span></dt>
 <dd><dl>
-<dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings">
- Disabling Compiler Warnings</a></span></dt>
+<dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.warnings">Disabling
+ Compiler Warnings</a></span></dt>
 <dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_defect_macros">Adding
       New Defect Macros</a></span></dt>
 <dt><span class="section"><a href="boost_config/guidelines_for_boost_authors.html#boost_config.guidelines_for_boost_authors.adding_new_feature_test_macros">Adding
@@ -166,14 +166,12 @@
         developers list.
       </p>
 </div>
-<a name="config_config_script"></a><p>
- </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.configuring_boost_for_your_platform.using_the_configure_script"></a><a class="link" href="index.html#boost_config.configuring_boost_for_your_platform.using_the_configure_script" title="Using the configure script">Using
       the configure script</a>
 </h3></div></div></div>
-<div class="important"><table border="0" summary="Important">
+<a name="config_config_script"></a><div class="important"><table border="0" summary="Important">
 <tr>
 <td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="../../../../doc/src/images/important.png"></td>
 <th align="left">Important</th>
@@ -310,14 +308,12 @@
           </li>
 </ul></div>
 </div>
-<a name="config_user_settable"></a><p>
- </p>
 <div class="section" lang="en">
 <div class="titlepage"><div><div><h3 class="title">
 <a name="boost_config.configuring_boost_for_your_platform.user_settable_options"></a><a class="link" href="index.html#boost_config.configuring_boost_for_your_platform.user_settable_options" title="User settable options">User
       settable options</a>
 </h3></div></div></div>
-<p>
+<a name="config_user_settable"></a><p>
         There are some configuration-options that represent user choices, rather
         than compiler defects or platform specific options. These are listed in
         <code class="computeroutput"><span class="special">&lt;</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">user</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">&gt;</span></code>
@@ -950,7 +946,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: November 23, 2010 at 03:21:20 GMT</small></p></td>
+<td align="left"><p><small>Last revised: April 06, 2011 at 10:49:30 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: branches/release/libs/config/doc/macro_reference.qbk
==============================================================================
--- branches/release/libs/config/doc/macro_reference.qbk (original)
+++ branches/release/libs/config/doc/macro_reference.qbk 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -539,14 +539,10 @@
 [[`BOOST_NO_0X_HDR_ARRAY`][The standard library does not provide header <array>.]]
 [[`BOOST_NO_0X_HDR_CHRONO`][The standard library does not provide header <chrono>.]]
 [[`BOOST_NO_0X_HDR_CODECVT`][The standard library does not provide header <codecvt>.]]
-[[`BOOST_NO_0X_HDR_CONCEPTS`][The standard library does not provide header <concepts>.]]
 [[`BOOST_NO_0X_HDR_CONDITION_VARIABLE`][The standard library does not provide header <condition_variable>.]]
-[[`BOOST_NO_0X_HDR_CONTAINER_CONCEPTS`][The standard library does not provide header <container_concepts>.]]
 [[`BOOST_NO_0X_HDR_FORWARD_LIST`][The standard library does not provide header <forward_list>.]]
 [[`BOOST_NO_0X_HDR_FUTURE`][The standard library does not provide header <future>.]]
 [[`BOOST_NO_0X_HDR_INITIALIZER_LIST`][The standard library does not provide header <initializer_list>.]]
-[[`BOOST_NO_0X_HDR_ITERATOR_CONCEPTS`][The standard library does not provide header <iterator_concepts>.]]
-[[`BOOST_NO_0X_HDR_MEMORY_CONCEPTS`][The standard library does not provide header <memory_concepts>.]]
 [[`BOOST_NO_0X_HDR_MUTEX`][The standard library does not provide header <mutex>.]]
 [[`BOOST_NO_0X_HDR_RANDOM`][The standard library does not provide header <random>.]]
 [[`BOOST_NO_0X_HDR_RATIO`][The standard library does not provide header <ratio>.]]
@@ -571,8 +567,6 @@
 [[`BOOST_NO_CHAR32_T`][The compiler does not support
 type `char32_t`.
 ]]
-[[`BOOST_NO_CONCEPTS`][The compiler does not support Concepts.
-]]
 [[`BOOST_NO_TEMPLATE_ALIASES`][The compiler does not support template aliases.
 ]]
 [[`BOOST_NO_CONSTEXPR`][The compiler does not support
@@ -674,6 +668,17 @@
 
 [*Note]: the ultimate source of documentation for this macro is in [@../../../../boost/detail/workaround.hpp boost/detail/workaround.hpp].
 ]]
+[[`BOOST_PREVENT_MACRO_SUBSTITUTION`][
+Sometimes you have a function name with the same name as a C macro, for example "min" and "max"
+member functions, in which case one can prevent the function being expanded as a macro using:
+``
+someclass.min BOOST_PREVENT_MACRO_SUBSTITUTION(arg1, arg2);
+``
+The following also works in most, but not all, contexts:
+``
+(someclass.max)(arg1, arg2);
+``
+]]
 [[`BOOST_DEDUCED_TYPENAME`][
 Some compilers don't support the use of typename for dependent types in deduced
 contexts. This macro expands to nothing on those compilers, and typename

Modified: branches/release/libs/config/test/Jamfile.v2
==============================================================================
--- branches/release/libs/config/test/Jamfile.v2 (original)
+++ branches/release/libs/config/test/Jamfile.v2 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -24,7 +24,8 @@
 }
 
 test-suite config
- :
+ :
+ [ compile config_test_c.c ]
     [ run config_test.cpp
           : #args
           : #input-files

Modified: branches/release/libs/config/test/all/Jamfile.v2
==============================================================================
--- branches/release/libs/config/test/all/Jamfile.v2 (original)
+++ branches/release/libs/config/test/all/Jamfile.v2 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -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 Sep 25 16:53:42 2010
+# This file was automatically generated on Tue Mar 15 12:25:21 2011
 # by libs/config/tools/generate.cpp
 # Copyright John Maddock.
 # Use, modification and distribution are subject to the
@@ -31,9 +31,6 @@
 test-suite "BOOST_HAS_CLOCK_GETTIME" :
 [ run ../has_clock_gettime_pass.cpp ]
 [ compile-fail ../has_clock_gettime_fail.cpp ] ;
-test-suite "BOOST_HAS_CONCEPTS" :
-[ run ../has_concepts_pass.cpp ]
-[ compile-fail ../has_concepts_fail.cpp ] ;
 test-suite "BOOST_HAS_DIRENT_H" :
 [ run ../has_dirent_h_pass.cpp ]
 [ compile-fail ../has_dirent_h_fail.cpp ] ;
@@ -184,15 +181,9 @@
 test-suite "BOOST_NO_0X_HDR_CODECVT" :
 [ run ../no_0x_hdr_codecvt_pass.cpp ]
 [ compile-fail ../no_0x_hdr_codecvt_fail.cpp ] ;
-test-suite "BOOST_NO_0X_HDR_CONCEPTS" :
-[ run ../no_0x_hdr_concepts_pass.cpp ]
-[ compile-fail ../no_0x_hdr_concepts_fail.cpp ] ;
 test-suite "BOOST_NO_0X_HDR_CONDITION_VARIABLE" :
 [ run ../no_0x_hdr_condition_variable_pass.cpp ]
 [ compile-fail ../no_0x_hdr_condition_variable_fail.cpp ] ;
-test-suite "BOOST_NO_0X_HDR_CONTAINER_CONCEPTS" :
-[ run ../no_0x_hdr_container_concepts_pass.cpp ]
-[ compile-fail ../no_0x_hdr_container_concepts_fail.cpp ] ;
 test-suite "BOOST_NO_0X_HDR_FORWARD_LIST" :
 [ run ../no_0x_hdr_forward_list_pass.cpp ]
 [ compile-fail ../no_0x_hdr_forward_list_fail.cpp ] ;
@@ -202,12 +193,6 @@
 test-suite "BOOST_NO_0X_HDR_INITIALIZER_LIST" :
 [ run ../no_0x_hdr_initializer_list_pass.cpp ]
 [ compile-fail ../no_0x_hdr_initializer_list_fail.cpp ] ;
-test-suite "BOOST_NO_0X_HDR_ITERATOR_CONCEPTS" :
-[ run ../no_0x_hdr_iterator_concepts_pass.cpp ]
-[ compile-fail ../no_0x_hdr_iterator_concepts_fail.cpp ] ;
-test-suite "BOOST_NO_0X_HDR_MEMORY_CONCEPTS" :
-[ run ../no_0x_hdr_memory_concepts_pass.cpp ]
-[ compile-fail ../no_0x_hdr_memory_concepts_fail.cpp ] ;
 test-suite "BOOST_NO_0X_HDR_MUTEX" :
 [ run ../no_0x_hdr_mutex_pass.cpp ]
 [ compile-fail ../no_0x_hdr_mutex_fail.cpp ] ;
@@ -271,9 +256,6 @@
 test-suite "BOOST_NO_COMPLETE_VALUE_INITIALIZATION" :
 [ run ../no_com_value_init_pass.cpp ]
 [ compile-fail ../no_com_value_init_fail.cpp ] ;
-test-suite "BOOST_NO_CONCEPTS" :
-[ run ../no_concepts_pass.cpp ]
-[ compile-fail ../no_concepts_fail.cpp ] ;
 test-suite "BOOST_NO_CONSTEXPR" :
 [ run ../no_constexpr_pass.cpp ]
 [ compile-fail ../no_constexpr_fail.cpp ] ;
@@ -325,6 +307,9 @@
 test-suite "BOOST_NO_EXTERN_TEMPLATE" :
 [ run ../no_extern_template_pass.cpp ]
 [ compile-fail ../no_extern_template_fail.cpp ] ;
+test-suite "BOOST_NO_FENV_H" :
+[ run ../no_fenv_h_pass.cpp ]
+[ compile-fail ../no_fenv_h_fail.cpp ] ;
 test-suite "BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS" :
 [ run ../no_function_template_default_args_pass.cpp ]
 [ compile-fail ../no_function_template_default_args_fail.cpp ] ;

Deleted: branches/release/libs/config/test/boost_has_concepts.ipp
==============================================================================
--- branches/release/libs/config/test/boost_has_concepts.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,23 +0,0 @@
-// Copyright (C) 2007 Douglas Gregor
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for most recent version.
-
-// MACRO: BOOST_HAS_CONCEPTS
-// TITLE: concepts
-// DESCRIPTION: The compiler supports C++0x concepts
-
-namespace boost_has_concepts {
-
-concept C<typename T> { }
-
-concept_map C<int> { }
-
-int test()
-{
- return 0;
-}
-
-}

Modified: branches/release/libs/config/test/boost_no_0x_hdr_array.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_array.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_array.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,7 +16,8 @@
 
 int test()
 {
- return 0;
+ std::array<int, 3> a = { 1, 2, 3 };
+ return a.size() == 3 ? 0 : 1;
 }
 
 }

Modified: branches/release/libs/config/test/boost_no_0x_hdr_chrono.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_chrono.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_chrono.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,15 @@
 
 int test()
 {
+ using std::chrono::nanoseconds;
+ using std::chrono::microseconds;
+ using std::chrono::milliseconds;
+ using std::chrono::seconds;
+ using std::chrono::minutes;
+ using std::chrono::hours;
+ using std::chrono::system_clock;
+ using std::chrono::monotonic_clock;
+ using std::chrono::high_resolution_clock;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_codecvt.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_codecvt.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_codecvt.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,9 @@
 
 int test()
 {
+ using std::codecvt_utf8;
+ using std::codecvt_utf16;
+ using std::codecvt_utf8_utf16;
   return 0;
 }
 

Deleted: branches/release/libs/config/test/boost_no_0x_hdr_concepts.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_concepts.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,22 +0,0 @@
-// (C) Copyright Beman Dawes 2009
-
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for more information.
-
-// MACRO: BOOST_NO_0X_HDR_CONCEPTS
-// TITLE: C++0x header <concepts> unavailable
-// DESCRIPTION: The standard library does not supply C++0x header <concepts>
-
-#include <concepts>
-
-namespace boost_no_0x_hdr_concepts {
-
-int test()
-{
- return 0;
-}
-
-}

Modified: branches/release/libs/config/test/boost_no_0x_hdr_condition_variable.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_condition_variable.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_condition_variable.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,8 @@
 
 int test()
 {
+ using std::condition_variable;
+ using std::condition_variable_any;
   return 0;
 }
 

Deleted: branches/release/libs/config/test/boost_no_0x_hdr_container_concepts.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_container_concepts.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,22 +0,0 @@
-// (C) Copyright Beman Dawes 2009
-
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for more information.
-
-// MACRO: BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-// TITLE: C++0x header <container_concepts> unavailable
-// DESCRIPTION: The standard library does not supply C++0x header <container_concepts>
-
-#include <container_concepts>
-
-namespace boost_no_0x_hdr_container_concepts {
-
-int test()
-{
- return 0;
-}
-
-}

Modified: branches/release/libs/config/test/boost_no_0x_hdr_forward_list.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_forward_list.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_forward_list.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,7 +16,8 @@
 
 int test()
 {
- return 0;
+ std::forward_list<int> l(2u, 2);
+ return *l.begin() == 2 ? 0 : 1;
 }
 
 }

Modified: branches/release/libs/config/test/boost_no_0x_hdr_future.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_future.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_future.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,19 @@
 
 int test()
 {
+ using std::is_error_code_enum;
+ using std::make_error_code;
+ using std::make_error_condition;
+ using std::future_category;
+ using std::future_error;
+ using std::promise;
+ using std::promise;
+ using std::promise;
+ using std::future;
+ using std::shared_future;
+ using std::atomic_future;
+ using std::packaged_task; // undefined
+ using std::async;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_initializer_list.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_initializer_list.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_initializer_list.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -14,8 +14,13 @@
 
 namespace boost_no_0x_hdr_initializer_list {
 
+void foo(const std::initializer_list<const char*>& l)
+{
+}
+
 int test()
 {
+ foo( { "a", "b", "c" } );
   return 0;
 }
 

Deleted: branches/release/libs/config/test/boost_no_0x_hdr_iterator_concepts.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_iterator_concepts.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,22 +0,0 @@
-// (C) Copyright Beman Dawes 2009
-
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for more information.
-
-// MACRO: BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-// TITLE: C++0x header <iterator_concepts> unavailable
-// DESCRIPTION: The standard library does not supply C++0x header <iterator_concepts>
-
-#include <iterator_concepts>
-
-namespace boost_no_0x_hdr_iterator_concepts {
-
-int test()
-{
- return 0;
-}
-
-}

Deleted: branches/release/libs/config/test/boost_no_0x_hdr_memory_concepts.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_memory_concepts.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,22 +0,0 @@
-// (C) Copyright Beman Dawes 2009
-
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for more information.
-
-// MACRO: BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-// TITLE: C++0x header <memory_concepts> unavailable
-// DESCRIPTION: The standard library does not supply C++0x header <memory_concepts>
-
-#include <memory_concepts>
-
-namespace boost_no_0x_hdr_memory_concepts {
-
-int test()
-{
- return 0;
-}
-
-}

Modified: branches/release/libs/config/test/boost_no_0x_hdr_mutex.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_mutex.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_mutex.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,10 @@
 
 int test()
 {
+ using std::mutex;
+ using std::recursive_mutex;
+ using std::timed_mutex;
+ using std::recursive_timed_mutex;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_random.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_random.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_random.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,15 @@
 
 int test()
 {
+ using std::minstd_rand0;
+ using std::mt19937;
+ using std::mt19937_64;
+ using std::ranlux24_base;
+ using std::ranlux48_base;
+ using std::ranlux24;
+ using std::ranlux48;
+ using std::knuth_b;
+ using std::default_random_engine;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_ratio.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_ratio.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_ratio.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,21 @@
 
 int test()
 {
+ using std::atto;
+ using std::femto;
+ using std::pico;
+ using std::nano;
+ using std::micro;
+ using std::milli;
+ using std::centi;
+ using std::deci;
+ using std::deca;
+ using std::hecto;
+ using std::kilo;
+ using std::mega;
+ using std::tera;
+ using std::peta;
+ using std::exa;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_regex.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_regex.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_regex.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,8 @@
 
 int test()
 {
+ using std::regex;
+ using std::wregex;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_system_error.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_system_error.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_system_error.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,10 @@
 
 int test()
 {
+ using std::error_category;
+ using std::error_code;
+ using std::error_condition;
+ using std::system_error;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_thread.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_thread.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_thread.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,11 @@
 
 int test()
 {
+ using std::thread;
+ using std::this_thread::get_id;
+ using std::this_thread::yield;
+ using std::this_thread::sleep_until;
+ using std::this_thread::sleep_for;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_type_traits.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_type_traits.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_type_traits.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,6 +16,90 @@
 
 int test()
 {
+ using std::integral_constant;
+ using std::true_type;
+ using std::false_type;
+ using std::is_void;
+ using std::is_integral;
+ using std::is_floating_point;
+ using std::is_array;
+ using std::is_pointer;
+ using std::is_lvalue_reference;
+ using std::is_rvalue_reference;
+ using std::is_member_object_pointer;
+ using std::is_member_function_pointer;
+ using std::is_enum;
+ using std::is_union;
+ using std::is_class;
+ using std::is_function;
+ using std::is_reference;
+ using std::is_arithmetic;
+ using std::is_fundamental;
+ using std::is_object;
+ using std::is_scalar;
+ using std::is_compound;
+ using std::is_member_pointer;
+ using std::is_const;
+ using std::is_volatile;
+ using std::is_trivial;
+ using std::is_trivially_copyable;
+ using std::is_standard_layout;
+ using std::is_pod;
+ using std::is_literal_type;
+ using std::is_empty;
+ using std::is_polymorphic;
+ using std::is_abstract;
+ using std::is_constructible;
+ using std::is_nothrow_constructible;
+ using std::has_default_constructor;
+ using std::has_copy_constructor;
+ using std::has_copy_assign;
+ using std::has_move_constructor;
+ using std::has_move_assign;
+ using std::has_trivial_default_constructor;
+ using std::has_trivial_copy_constructor;
+ using std::has_trivial_move_constructor;
+ using std::has_trivial_copy_assign;
+ using std::has_trivial_move_assign;
+ using std::has_trivial_destructor;
+ using std::has_nothrow_default_constructor;
+ using std::has_nothrow_copy_constructor;
+ using std::has_nothrow_move_constructor;
+ using std::has_nothrow_copy_assign;
+ using std::has_nothrow_move_assign;
+ using std::has_virtual_destructor;
+ using std::is_signed;
+ using std::is_unsigned;
+ using std::alignment_of;
+ using std::rank;
+ using std::extent;
+ using std::is_same;
+ using std::is_base_of;
+ using std::is_convertible;
+ using std::is_explicitly_convertible;
+ using std::remove_const;
+ using std::remove_volatile;
+ using std::remove_cv;
+ using std::add_const;
+ using std::add_volatile;
+ using std::add_cv;
+ using std::remove_reference;
+ using std::add_lvalue_reference;
+ using std::add_rvalue_reference;
+ using std::make_signed;
+ using std::make_unsigned;
+ using std::remove_extent;
+ using std::remove_all_extents;
+ using std::remove_pointer;
+ using std::add_pointer;
+ using std::aligned_storage;
+ using std::aligned_union;
+ using std::decay;
+ using std::enable_if;
+ using std::conditional;
+ using std::common_type;
+ using std::underlying_type;
+ using std::result_of;
   return 0;
 }
 

Modified: branches/release/libs/config/test/boost_no_0x_hdr_unordered_map.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_unordered_map.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_unordered_map.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,7 +16,9 @@
 
 int test()
 {
- return 0;
+ std::unordered_map<int, long> s1;
+ std::unordered_multimap<int, long> s2;
+ return s1.empty() && s2.empty() ? 0 : 1;
 }
 
 }

Modified: branches/release/libs/config/test/boost_no_0x_hdr_unordered_set.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_0x_hdr_unordered_set.ipp (original)
+++ branches/release/libs/config/test/boost_no_0x_hdr_unordered_set.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -16,7 +16,9 @@
 
 int test()
 {
- return 0;
+ std::unordered_set<int> s1;
+ std::unordered_multiset<int> s2;
+ return s1.empty() && s2.empty() ? 0 : 1;
 }
 
 }

Deleted: branches/release/libs/config/test/boost_no_concepts.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_concepts.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,22 +0,0 @@
-// (C) Copyright Beman Dawes 2009
-
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for more information.
-
-// MACRO: BOOST_NO_CONCEPTS
-// TITLE: C++0x concepts feature unavailable
-// DESCRIPTION: The compiler does not support the C++0x concepts feature
-
-namespace boost_no_concepts {
-
-concept Foo<typename T> { }
-
-int test()
-{
- return 0;
-}
-
-}

Modified: branches/release/libs/config/test/boost_no_constexpr.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_constexpr.ipp (original)
+++ branches/release/libs/config/test/boost_no_constexpr.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -14,6 +14,26 @@
 
 constexpr int square(int x) { return x * x; } // from N2235
 
+// from 5.19:
+constexpr const int* addr(const int& ir) { return &ir; }
+static const int x = 5;
+constexpr const int* xp = addr(x);
+
+struct A
+{
+ constexpr A(int i) : val(i) { }
+ constexpr operator int() { return val; }
+ constexpr operator long() { return 43; }
+private:
+ int val;
+};
+
+template<int> struct X { };
+
+constexpr A a = 42;
+
+X<a> xx; // OK: unique conversion to int
+
 int test()
 {
   int i = square(5);

Modified: branches/release/libs/config/test/boost_no_defaulted_functions.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_defaulted_functions.ipp (original)
+++ branches/release/libs/config/test/boost_no_defaulted_functions.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -10,6 +10,10 @@
 // TITLE: C++0x defaulted functions unavailable
 // DESCRIPTION: The compiler does not support C++0x defaulted functions
 
+#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__)
+# error Defaulted functions aren't really supported in non-C++0x mode
+#endif
+
 namespace boost_no_defaulted_functions {
 
   struct foo {

Modified: branches/release/libs/config/test/boost_no_deleted_functions.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_deleted_functions.ipp (original)
+++ branches/release/libs/config/test/boost_no_deleted_functions.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -10,6 +10,10 @@
 // TITLE: C++0x =delete functions unavailable
 // DESCRIPTION: The compiler does not support C++0x =delete functions
 
+#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__)
+# error Deleted functions aren't really supported in non-C++0x mode
+#endif
+
 namespace boost_no_deleted_functions {
 
   struct foo {

Modified: branches/release/libs/config/test/boost_no_explicit_cvt_ops.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_explicit_cvt_ops.ipp (original)
+++ branches/release/libs/config/test/boost_no_explicit_cvt_ops.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -10,6 +10,10 @@
 // TITLE: C++0x explicit conversion operators unavailable
 // DESCRIPTION: The compiler does not support C++0x explicit conversion operators
 
+#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__)
+# error This feature isn't really available in non-C++0x mode
+#endif
+
 namespace boost_no_explicit_conversion_operators {
 
   struct foo {

Modified: branches/release/libs/config/test/boost_no_fenv_h.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_fenv_h.ipp (original)
+++ branches/release/libs/config/test/boost_no_fenv_h.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -8,21 +8,21 @@
 
 // MACRO: BOOST_NO_FENV_H
 // TITLE: fenv.h
-// DESCRIPTION: There is no POSIX <fenv.h> available. If <fenv.h> is
+// DESCRIPTION: There is no standard <fenv.h> available. If <fenv.h> is
 // available, <boost/detail/fenv.hpp> should be included
 // instead of directly including <fenv.h>.
 
-#include <boost/detail/fenv.hpp>
+#include <fenv.h>
 
 namespace boost_no_fenv_h {
 
 int test()
 {
- /// POSIX required typedefs
+ /// C++0x required typedefs
   typedef ::fenv_t has_fenv_t;
   typedef ::fexcept_t has_fexcept_t;
 
- /// POSIX required macros
+ /// C++0x required macros
   #if !defined(FE_DIVBYZERO)
     #error platform does not define FE_DIVBYZERO
   #endif
@@ -31,47 +31,27 @@
     #error platform does not define FE_INEXACT
   #endif
 
- #if !defined(FE_INVALID)
- #error platform does not define FE_INVALID
- #endif
-
- #if !defined(FE_OVERFLOW)
- #error platform does not define FE_OVERFLOW
+ #if !defined(FE_ALL_EXCEPT)
+ #error platform does not define FE_ALL_EXCEPT
   #endif
 
- #if !defined(FE_UNDERFLOW)
- #error platform does not define FE_UNDERFLOW
- #endif
-
- #if !defined(FE_DOWNWARD)
- #error platform does not define FE_DOWNWARD
- #endif
-
- #if !defined(FE_TONEAREST)
- #error platform does not define FE_TONEAREST
- #endif
+ int i;
+ fexcept_t fe;
+ fenv_t env;
   
- #if !defined(FE_UPWARD)
- #error platform does not define FE_UPWARD
- #endif
-
- #if !defined(FE_DFL_ENV)
- #error platform does not define FE_DFL_ENV
- #endif
-
- int (*has_feclearexcept)(int) = ::feclearexcept;
- int (*has_fegetenv)(fenv_t*) = ::fegetenv;
- int (*has_fegetexcept)(fexcept_t*, int) = ::fegetexcept;
- int (*has_fegetround)(void) = ::fegetround;
- int (*has_feholdexcept)(fenv_t*) = ::feholdexcept;
- int (*has_feraiseexcept)(int) = ::feraiseexcept;
- int (*has_fesetenv)(const fenv_t*) = ::fesetenv;
- int (*has_fesetexceptflag)(const fexcept_t*, int) = ::fesetexceptflag;
- int (*has_fesetround)(int) = ::fesetround;
- int (*has_fetestexcept)(int) = ::fetestexcept;
- int (*has_feupdateenv)(const fenv_t*) = ::feupdateenv;
+ i = feclearexcept(FE_ALL_EXCEPT);
+ i += fetestexcept(FE_ALL_EXCEPT); // All flags should be zero
+ i += fegetexceptflag(&fe, FE_ALL_EXCEPT);
+ i += fesetexceptflag(&fe, FE_ALL_EXCEPT);
+ i += feraiseexcept(0);
+ i += fesetround(fegetround());
+ i += fegetenv(&env);
+ i += fesetenv(&env);
+ i += feholdexcept(&env);
+ if(i)
+ i += feupdateenv(&env);
 
- return 0;
+ return i;
 }
 
 }

Modified: branches/release/libs/config/test/boost_no_initializer_lists.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_initializer_lists.ipp (original)
+++ branches/release/libs/config/test/boost_no_initializer_lists.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -12,6 +12,7 @@
 
 #include <initializer_list>
 #include <vector>
+#include <string>
 
 namespace boost_no_initializer_lists {
 

Modified: branches/release/libs/config/test/boost_no_lambdas.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_lambdas.ipp (original)
+++ branches/release/libs/config/test/boost_no_lambdas.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -10,6 +10,10 @@
 // TITLE: C++0x lambda feature unavailable
 // DESCRIPTION: The compiler does not support the C++0x lambda feature
 
+#if defined(__GNUC__) && !defined(__GXX_EXPERIMENTAL_CXX0X__)
+# error This feature isn't really available in non-C++0x mode
+#endif
+
 namespace boost_no_lambdas {
 
 int test()

Modified: branches/release/libs/config/test/boost_no_scoped_enums.ipp
==============================================================================
--- branches/release/libs/config/test/boost_no_scoped_enums.ipp (original)
+++ branches/release/libs/config/test/boost_no_scoped_enums.ipp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -15,7 +15,14 @@
 int test()
 {
   enum class scoped_enum { yes, no, maybe };
- return 0;
+ // This tests bug http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38064
+ bool b = (scoped_enum::yes == scoped_enum::yes)
+ && (scoped_enum::yes != scoped_enum::no)
+ && (scoped_enum::yes < scoped_enum::no)
+ && (scoped_enum::yes <= scoped_enum::no)
+ && (scoped_enum::no > scoped_enum::yes)
+ && (scoped_enum::no >= scoped_enum::yes);
+ return b ? 0 : 1;
 }
 
 }

Modified: branches/release/libs/config/test/config_info.cpp
==============================================================================
--- branches/release/libs/config/test/config_info.cpp (original)
+++ branches/release/libs/config/test/config_info.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -914,7 +914,6 @@
    PRINT_MACRO(BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL);
    PRINT_MACRO(BOOST_HAS_BETHREADS);
    PRINT_MACRO(BOOST_HAS_CLOCK_GETTIME);
- PRINT_MACRO(BOOST_HAS_CONCEPTS);
    PRINT_MACRO(BOOST_HAS_DIRENT_H);
    PRINT_MACRO(BOOST_HAS_EXPM1);
    PRINT_MACRO(BOOST_HAS_FTIME);
@@ -966,14 +965,10 @@
    PRINT_MACRO(BOOST_NO_0X_HDR_ARRAY);
    PRINT_MACRO(BOOST_NO_0X_HDR_CHRONO);
    PRINT_MACRO(BOOST_NO_0X_HDR_CODECVT);
- PRINT_MACRO(BOOST_NO_0X_HDR_CONCEPTS);
    PRINT_MACRO(BOOST_NO_0X_HDR_CONDITION_VARIABLE);
- PRINT_MACRO(BOOST_NO_0X_HDR_CONTAINER_CONCEPTS);
    PRINT_MACRO(BOOST_NO_0X_HDR_FORWARD_LIST);
    PRINT_MACRO(BOOST_NO_0X_HDR_FUTURE);
    PRINT_MACRO(BOOST_NO_0X_HDR_INITIALIZER_LIST);
- PRINT_MACRO(BOOST_NO_0X_HDR_ITERATOR_CONCEPTS);
- PRINT_MACRO(BOOST_NO_0X_HDR_MEMORY_CONCEPTS);
    PRINT_MACRO(BOOST_NO_0X_HDR_MUTEX);
    PRINT_MACRO(BOOST_NO_0X_HDR_RANDOM);
    PRINT_MACRO(BOOST_NO_0X_HDR_RATIO);
@@ -994,7 +989,6 @@
    PRINT_MACRO(BOOST_NO_CHAR16_T);
    PRINT_MACRO(BOOST_NO_CHAR32_T);
    PRINT_MACRO(BOOST_NO_COMPLETE_VALUE_INITIALIZATION);
- PRINT_MACRO(BOOST_NO_CONCEPTS);
    PRINT_MACRO(BOOST_NO_CONSTEXPR);
    PRINT_MACRO(BOOST_NO_CTYPE_FUNCTIONS);
    PRINT_MACRO(BOOST_NO_CV_SPECIALIZATIONS);
@@ -1011,6 +1005,7 @@
    PRINT_MACRO(BOOST_NO_EXPLICIT_CONVERSION_OPERATORS);
    PRINT_MACRO(BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS);
    PRINT_MACRO(BOOST_NO_EXTERN_TEMPLATE);
+ PRINT_MACRO(BOOST_NO_FENV_H);
    PRINT_MACRO(BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS);
    PRINT_MACRO(BOOST_NO_FUNCTION_TEMPLATE_ORDERING);
    PRINT_MACRO(BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS);
@@ -1078,6 +1073,8 @@
    PRINT_MACRO(BOOST_NO_VARIADIC_TEMPLATES);
    PRINT_MACRO(BOOST_NO_VOID_RETURNS);
 
+
+
    // END GENERATED BLOCK
 
    PRINT_MACRO(BOOST_INTEL);

Modified: branches/release/libs/config/test/config_test.cpp
==============================================================================
--- branches/release/libs/config/test/config_test.cpp (original)
+++ branches/release/libs/config/test/config_test.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -1,4 +1,4 @@
-// This file was automatically generated on Sat Sep 25 16:53:42 2010
+// This file was automatically generated on Tue Mar 15 12:25:21 2011
 // by libs/config/tools/generate.cpp
 // Copyright John Maddock 2002-4.
 // Use, modification and distribution are subject to the
@@ -37,21 +37,11 @@
 #else
 namespace boost_no_0x_hdr_codecvt = empty_boost;
 #endif
-#ifndef BOOST_NO_0X_HDR_CONCEPTS
-#include "boost_no_0x_hdr_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_concepts = empty_boost;
-#endif
 #ifndef BOOST_NO_0X_HDR_CONDITION_VARIABLE
 #include "boost_no_0x_hdr_condition_variable.ipp"
 #else
 namespace boost_no_0x_hdr_condition_variable = empty_boost;
 #endif
-#ifndef BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-#include "boost_no_0x_hdr_container_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_container_concepts = empty_boost;
-#endif
 #ifndef BOOST_NO_0X_HDR_FORWARD_LIST
 #include "boost_no_0x_hdr_forward_list.ipp"
 #else
@@ -67,16 +57,6 @@
 #else
 namespace boost_no_0x_hdr_initializer_list = empty_boost;
 #endif
-#ifndef BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-#include "boost_no_0x_hdr_iterator_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_iterator_concepts = empty_boost;
-#endif
-#ifndef BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-#include "boost_no_0x_hdr_memory_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_memory_concepts = empty_boost;
-#endif
 #ifndef BOOST_NO_0X_HDR_MUTEX
 #include "boost_no_0x_hdr_mutex.ipp"
 #else
@@ -182,11 +162,6 @@
 #else
 namespace boost_no_complete_value_initialization = empty_boost;
 #endif
-#ifndef BOOST_NO_CONCEPTS
-#include "boost_no_concepts.ipp"
-#else
-namespace boost_no_concepts = empty_boost;
-#endif
 #ifndef BOOST_NO_CONSTEXPR
 #include "boost_no_constexpr.ipp"
 #else
@@ -272,6 +247,11 @@
 #else
 namespace boost_no_extern_template = empty_boost;
 #endif
+#ifndef BOOST_NO_FENV_H
+#include "boost_no_fenv_h.ipp"
+#else
+namespace boost_no_fenv_h = empty_boost;
+#endif
 #ifndef BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
 #include "boost_no_function_template_default_args.ipp"
 #else
@@ -623,11 +603,6 @@
 #else
 namespace boost_has_clock_gettime = empty_boost;
 #endif
-#ifdef BOOST_HAS_CONCEPTS
-#include "boost_has_concepts.ipp"
-#else
-namespace boost_has_concepts = empty_boost;
-#endif
 #ifdef BOOST_HAS_DIRENT_H
 #include "boost_has_dirent_h.ipp"
 #else
@@ -881,11 +856,6 @@
       std::cerr << "Failed test for BOOST_HAS_CLOCK_GETTIME at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
- if(0 != boost_has_concepts::test())
- {
- std::cerr << "Failed test for BOOST_HAS_CONCEPTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
- ++error_count;
- }
    if(0 != boost_has_dirent_h::test())
    {
       std::cerr << "Failed test for BOOST_HAS_DIRENT_H at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1136,21 +1106,11 @@
       std::cerr << "Failed test for BOOST_NO_0X_HDR_CODECVT at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
- if(0 != boost_no_0x_hdr_concepts::test())
- {
- std::cerr << "Failed test for BOOST_NO_0X_HDR_CONCEPTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
- ++error_count;
- }
    if(0 != boost_no_0x_hdr_condition_variable::test())
    {
       std::cerr << "Failed test for BOOST_NO_0X_HDR_CONDITION_VARIABLE at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
- if(0 != boost_no_0x_hdr_container_concepts::test())
- {
- std::cerr << "Failed test for BOOST_NO_0X_HDR_CONTAINER_CONCEPTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
- ++error_count;
- }
    if(0 != boost_no_0x_hdr_forward_list::test())
    {
       std::cerr << "Failed test for BOOST_NO_0X_HDR_FORWARD_LIST at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1166,16 +1126,6 @@
       std::cerr << "Failed test for BOOST_NO_0X_HDR_INITIALIZER_LIST at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
- if(0 != boost_no_0x_hdr_iterator_concepts::test())
- {
- std::cerr << "Failed test for BOOST_NO_0X_HDR_ITERATOR_CONCEPTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
- ++error_count;
- }
- if(0 != boost_no_0x_hdr_memory_concepts::test())
- {
- std::cerr << "Failed test for BOOST_NO_0X_HDR_MEMORY_CONCEPTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
- ++error_count;
- }
    if(0 != boost_no_0x_hdr_mutex::test())
    {
       std::cerr << "Failed test for BOOST_NO_0X_HDR_MUTEX at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1281,11 +1231,6 @@
       std::cerr << "Failed test for BOOST_NO_COMPLETE_VALUE_INITIALIZATION at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
- if(0 != boost_no_concepts::test())
- {
- std::cerr << "Failed test for BOOST_NO_CONCEPTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
- ++error_count;
- }
    if(0 != boost_no_constexpr::test())
    {
       std::cerr << "Failed test for BOOST_NO_CONSTEXPR at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1371,6 +1316,11 @@
       std::cerr << "Failed test for BOOST_NO_EXTERN_TEMPLATE at: " << __FILE__ << ":" << __LINE__ << std::endl;
       ++error_count;
    }
+ if(0 != boost_no_fenv_h::test())
+ {
+ std::cerr << "Failed test for BOOST_NO_FENV_H at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
    if(0 != boost_no_function_template_default_args::test())
    {
       std::cerr << "Failed test for BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS at: " << __FILE__ << ":" << __LINE__ << std::endl;

Deleted: branches/release/libs/config/test/has_concepts_fail.cpp
==============================================================================
--- branches/release/libs/config/test/has_concepts_fail.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,34 +0,0 @@
-// This file was automatically generated on Sat Aug 25 12:32:20 2007
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.
-
-// Test file for macro BOOST_HAS_CONCEPTS
-// This file should not compile, if it does then
-// BOOST_HAS_CONCEPTS should be defined.
-// See file boost_has_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifndef BOOST_HAS_CONCEPTS
-#include "boost_has_concepts.ipp"
-#else
-#error "this file should not compile"
-#endif
-
-int main( int, char *[] )
-{
- return boost_has_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/has_concepts_pass.cpp
==============================================================================
--- branches/release/libs/config/test/has_concepts_pass.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,34 +0,0 @@
-// This file was automatically generated on Sat Aug 25 12:32:20 2007
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.
-
-// Test file for macro BOOST_HAS_CONCEPTS
-// This file should compile, if it does not then
-// BOOST_HAS_CONCEPTS should not be defined.
-// See file boost_has_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifdef BOOST_HAS_CONCEPTS
-#include "boost_has_concepts.ipp"
-#else
-namespace boost_has_concepts = empty_boost;
-#endif
-
-int main( int, char *[] )
-{
- return boost_has_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_concepts_fail.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_concepts_fail.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_CONCEPTS
-// This file should not compile, if it does then
-// BOOST_NO_0X_HDR_CONCEPTS should not be defined.
-// See file boost_no_0x_hdr_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifdef BOOST_NO_0X_HDR_CONCEPTS
-#include "boost_no_0x_hdr_concepts.ipp"
-#else
-#error "this file should not compile"
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_concepts_pass.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_concepts_pass.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_CONCEPTS
-// This file should compile, if it does not then
-// BOOST_NO_0X_HDR_CONCEPTS should be defined.
-// See file boost_no_0x_hdr_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifndef BOOST_NO_0X_HDR_CONCEPTS
-#include "boost_no_0x_hdr_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_concepts = empty_boost;
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_container_concepts_fail.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_container_concepts_fail.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-// This file should not compile, if it does then
-// BOOST_NO_0X_HDR_CONTAINER_CONCEPTS should not be defined.
-// See file boost_no_0x_hdr_container_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifdef BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-#include "boost_no_0x_hdr_container_concepts.ipp"
-#else
-#error "this file should not compile"
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_container_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_container_concepts_pass.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_container_concepts_pass.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-// This file should compile, if it does not then
-// BOOST_NO_0X_HDR_CONTAINER_CONCEPTS should be defined.
-// See file boost_no_0x_hdr_container_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifndef BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
-#include "boost_no_0x_hdr_container_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_container_concepts = empty_boost;
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_container_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_iterator_concepts_fail.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_iterator_concepts_fail.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-// This file should not compile, if it does then
-// BOOST_NO_0X_HDR_ITERATOR_CONCEPTS should not be defined.
-// See file boost_no_0x_hdr_iterator_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifdef BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-#include "boost_no_0x_hdr_iterator_concepts.ipp"
-#else
-#error "this file should not compile"
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_iterator_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_iterator_concepts_pass.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_iterator_concepts_pass.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-// This file should compile, if it does not then
-// BOOST_NO_0X_HDR_ITERATOR_CONCEPTS should be defined.
-// See file boost_no_0x_hdr_iterator_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifndef BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
-#include "boost_no_0x_hdr_iterator_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_iterator_concepts = empty_boost;
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_iterator_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_memory_concepts_fail.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_memory_concepts_fail.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-// This file should not compile, if it does then
-// BOOST_NO_0X_HDR_MEMORY_CONCEPTS should not be defined.
-// See file boost_no_0x_hdr_memory_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifdef BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-#include "boost_no_0x_hdr_memory_concepts.ipp"
-#else
-#error "this file should not compile"
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_memory_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_0x_hdr_memory_concepts_pass.cpp
==============================================================================
--- branches/release/libs/config/test/no_0x_hdr_memory_concepts_pass.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-// This file should compile, if it does not then
-// BOOST_NO_0X_HDR_MEMORY_CONCEPTS should be defined.
-// See file boost_no_0x_hdr_memory_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifndef BOOST_NO_0X_HDR_MEMORY_CONCEPTS
-#include "boost_no_0x_hdr_memory_concepts.ipp"
-#else
-namespace boost_no_0x_hdr_memory_concepts = empty_boost;
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_0x_hdr_memory_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_concepts_fail.cpp
==============================================================================
--- branches/release/libs/config/test/no_concepts_fail.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_CONCEPTS
-// This file should not compile, if it does then
-// BOOST_NO_CONCEPTS should not be defined.
-// See file boost_no_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifdef BOOST_NO_CONCEPTS
-#include "boost_no_concepts.ipp"
-#else
-#error "this file should not compile"
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_concepts::test();
-}
-

Deleted: branches/release/libs/config/test/no_concepts_pass.cpp
==============================================================================
--- branches/release/libs/config/test/no_concepts_pass.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-// This file was automatically generated on Fri May 15 11:57:42 2009
-// by libs/config/tools/generate.cpp
-// Copyright John Maddock 2002-4.
-// Use, modification and distribution are subject to the
-// Boost Software License, Version 1.0. (See accompanying file
-// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
-
-// See http://www.boost.org/libs/config for the most recent version.//
-// Revision $Id$
-//
-
-
-// Test file for macro BOOST_NO_CONCEPTS
-// This file should compile, if it does not then
-// BOOST_NO_CONCEPTS should be defined.
-// See file boost_no_concepts.ipp for details
-
-// Must not have BOOST_ASSERT_CONFIG set; it defeats
-// the objective of this file:
-#ifdef BOOST_ASSERT_CONFIG
-# undef BOOST_ASSERT_CONFIG
-#endif
-
-#include <boost/config.hpp>
-#include "test.hpp"
-
-#ifndef BOOST_NO_CONCEPTS
-#include "boost_no_concepts.ipp"
-#else
-namespace boost_no_concepts = empty_boost;
-#endif
-
-int main( int, char *[] )
-{
- return boost_no_concepts::test();
-}
-

Modified: branches/release/libs/config/tools/generate.cpp
==============================================================================
--- branches/release/libs/config/tools/generate.cpp (original)
+++ branches/release/libs/config/tools/generate.cpp 2011-04-25 08:10:48 EDT (Mon, 25 Apr 2011)
@@ -124,7 +124,7 @@
 {
    if(!fs::exists(file))
    {
- std::cout << "Writing test file " << file.native_directory_string() << std::endl;
+ std::cout << "Writing test file " << file.string() << std::endl;
 
       fs::ofstream ofs(file);
       std::time_t t = std::time(0);
@@ -180,13 +180,13 @@
    }
    else
    {
- std::cout << "Skipping existing test file " << file.native_directory_string() << std::endl;
+ std::cout << "Skipping existing test file " << file.string() << std::endl;
    }
 }
 
 void process_ipp_file(const fs::path& file, bool positive_test)
 {
- std::cout << "Info: Scanning file: " << file.native_directory_string() << std::endl;
+ std::cout << "Info: Scanning file: " << file.string() << std::endl;
 
    // our variables:
    std::string file_text;
@@ -210,7 +210,7 @@
    }
    if(macro_name.empty())
    {
- std::cout << "Error: no macro definition found in " << file.native_directory_string();
+ std::cout << "Error: no macro definition found in " << file.string();
    }
    else
    {
@@ -219,10 +219,10 @@
 
    // get the output filesnames:
    boost::regex file_regex("boost_([^.]+)\\.ipp");
- positive_file = file.branch_path() / boost::regex_replace(file.leaf(), file_regex, "$1_pass.cpp");
- negative_file = file.branch_path() / boost::regex_replace(file.leaf(), file_regex, "$1_fail.cpp");
- write_test_file(positive_file, macro_name, namespace_name, file.leaf(), positive_test, true);
- write_test_file(negative_file, macro_name, namespace_name, file.leaf(), positive_test, false);
+ positive_file = file.branch_path() / boost::regex_replace(file.leaf().string(), file_regex, "$1_pass.cpp");
+ negative_file = file.branch_path() / boost::regex_replace(file.leaf().string(), file_regex, "$1_fail.cpp");
+ write_test_file(positive_file, macro_name, namespace_name, file.leaf().string(), positive_test, true);
+ write_test_file(negative_file, macro_name, namespace_name, file.leaf().string(), positive_test, false);
    
    // always create config_test data,
    // positive and negative tests go to separate streams, because for some
@@ -232,7 +232,7 @@
    if(!positive_test)
       *pout << "n";
    *pout << "def " << macro_name
- << "\n#include \"" << file.leaf() << "\"\n#else\nnamespace "
+ << "\n#include \"" << file.leaf().string() << "\"\n#else\nnamespace "
       << namespace_name << " = empty_boost;\n#endif\n";
 
    config_test2 << " if(0 != " << namespace_name << "::test())\n"
@@ -243,12 +243,12 @@
 
    // always generate the jamfile data:
    jamfile << "test-suite \"" << macro_name << "\" : \n"
- "[ run " << positive_file.leaf() << " <template>config_options ]\n"
- "[ compile-fail " << negative_file.leaf() << " <template>config_options ] ;\n";
+ "[ run " << positive_file.leaf().string() << " <template>config_options ]\n"
+ "[ compile-fail " << negative_file.leaf().string() << " <template>config_options ] ;\n";
 
    jamfile_v2 << "test-suite \"" << macro_name << "\" : \n"
- "[ run ../" << positive_file.leaf() << " ]\n"
- "[ compile-fail ../" << negative_file.leaf() << " ] ;\n";
+ "[ run ../" << positive_file.leaf().string() << " ]\n"
+ "[ compile-fail ../" << negative_file.leaf().string() << " ] ;\n";
 
 }
 
@@ -268,7 +268,7 @@
       fs::path p(__FILE__, fs::native);
       config_path = p.branch_path().branch_path() / "test";
    }
- std::cout << "Info: Boost.Config test path set as: " << config_path.native_directory_string() << std::endl;
+ std::cout << "Info: Boost.Config test path set as: " << config_path.string() << std::endl;
 
    // enumerate *.ipp files:
    boost::regex ipp_mask("boost_(?:(has)|no).*\\.ipp");
@@ -276,7 +276,7 @@
    fs::directory_iterator i(config_path), j;
    while(i != j)
    {
- if(boost::regex_match(i->path().leaf(), ipp_match, ipp_mask))
+ if(boost::regex_match(i->path().leaf().string(), ipp_match, ipp_mask))
       {
          process_ipp_file(*i, ipp_match[1].matched);
       }


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk