Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r67522 - in branches/release: boost/config boost/config/compiler boost/config/platform boost/config/stdlib libs/config/doc libs/config/doc/html libs/config/doc/html/boost_config libs/config/test
From: john_at_[hidden]
Date: 2010-12-31 12:08:25


Author: johnmaddock
Date: 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
New Revision: 67522
URL: http://svn.boost.org/trac/boost/changeset/67522

Log:
Merge Boost.Config changes from Trunk.
Added:
   branches/release/libs/config/test/boost_no_fenv_h.ipp
      - copied unchanged from r67519, /trunk/libs/config/test/boost_no_fenv_h.ipp
   branches/release/libs/config/test/no_fenv_h_fail.cpp
      - copied unchanged from r67519, /trunk/libs/config/test/no_fenv_h_fail.cpp
   branches/release/libs/config/test/no_fenv_h_pass.cpp
      - copied unchanged from r67519, /trunk/libs/config/test/no_fenv_h_pass.cpp
Text files modified:
   branches/release/boost/config/auto_link.hpp | 3
   branches/release/boost/config/compiler/borland.hpp | 3
   branches/release/boost/config/compiler/comeau.hpp | 2
   branches/release/boost/config/compiler/common_edg.hpp | 6
   branches/release/boost/config/compiler/gcc.hpp | 14 +-
   branches/release/boost/config/compiler/metrowerks.hpp | 2
   branches/release/boost/config/compiler/sunpro_cc.hpp | 4
   branches/release/boost/config/compiler/visualc.hpp | 11 +-
   branches/release/boost/config/platform/aix.hpp | 8 +
   branches/release/boost/config/platform/amigaos.hpp | 3
   branches/release/boost/config/platform/beos.hpp | 8 +
   branches/release/boost/config/platform/bsd.hpp | 25 ++++-
   branches/release/boost/config/platform/cygwin.hpp | 66 +++++++------
   branches/release/boost/config/platform/hpux.hpp | 8 +
   branches/release/boost/config/platform/irix.hpp | 6 +
   branches/release/boost/config/platform/linux.hpp | 8 +
   branches/release/boost/config/platform/macos.hpp | 6 +
   branches/release/boost/config/platform/qnxnto.hpp | 8 +
   branches/release/boost/config/platform/solaris.hpp | 6 +
   branches/release/boost/config/platform/symbian.hpp | 10 +
   branches/release/boost/config/platform/vxworks.hpp | 6 +
   branches/release/boost/config/platform/win32.hpp | 6 +
   branches/release/boost/config/stdlib/dinkumware.hpp | 2
   branches/release/boost/config/stdlib/libstdcpp3.hpp | 11 ++
   branches/release/boost/config/stdlib/sgi.hpp | 11 ++
   branches/release/boost/config/stdlib/stlport.hpp | 10 ++
   branches/release/boost/config/stdlib/vacpp.hpp | 10 ++
   branches/release/boost/config/suffix.hpp | 25 +++++
   branches/release/libs/config/doc/html/boost_config/boost_macro_reference.html | 181 ++++++++++++++++++++++++++++++++++++++++
   branches/release/libs/config/doc/html/index.html | 4
   branches/release/libs/config/doc/macro_reference.qbk | 57 ++++++++++++
   branches/release/libs/config/test/config_info.cpp | 28 ++---
   32 files changed, 480 insertions(+), 78 deletions(-)

Modified: branches/release/boost/config/auto_link.hpp
==============================================================================
--- branches/release/boost/config/auto_link.hpp (original)
+++ branches/release/boost/config/auto_link.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -414,7 +414,4 @@
 #if defined(BOOST_DYN_LINK)
 # undef BOOST_DYN_LINK
 #endif
-#if defined(BOOST_AUTO_LINK_NOMANGLE)
-# undef BOOST_AUTO_LINK_NOMANGLE
-#endif
 

Modified: branches/release/boost/config/compiler/borland.hpp
==============================================================================
--- branches/release/boost/config/compiler/borland.hpp (original)
+++ branches/release/boost/config/compiler/borland.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -12,6 +12,9 @@
 //
 // versions check:
 // we don't support Borland prior to version 5.4:
+
+#define BOOST_BORLAND __BORLANDC__
+
 #if __BORLANDC__ < 0x540
 # error "Compiler not supported or configured - please reconfigure"
 #endif

Modified: branches/release/boost/config/compiler/comeau.hpp
==============================================================================
--- branches/release/boost/config/compiler/comeau.hpp (original)
+++ branches/release/boost/config/compiler/comeau.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -14,6 +14,8 @@
 
 #include "boost/config/compiler/common_edg.hpp"
 
+#define BOOST_COMO __COMO_VERSION__
+
 #if (__COMO_VERSION__ <= 4245)
 
 # if defined(_MSC_VER) && _MSC_VER <= 1300

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 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -62,10 +62,13 @@
 #if (__EDG_VERSION__ < 310)
 # define BOOST_NO_EXTERN_TEMPLATE
 #endif
-#if (__EDG_VERSION__ <= 310) || !defined(BOOST_STRICT_CONFIG)
+#if (__EDG_VERSION__ <= 310)
 // No support for initializer lists
 # define BOOST_NO_INITIALIZER_LISTS
 #endif
+#if (__EDG_VERSION__ < 400)
+# define BOOST_NO_VARIADIC_MACROS
+#endif
 
 #define BOOST_NO_AUTO_DECLARATIONS
 #define BOOST_NO_AUTO_MULTIDECLARATIONS
@@ -88,7 +91,6 @@
 #define BOOST_NO_TEMPLATE_ALIASES
 #define BOOST_NO_UNICODE_LITERALS
 #define BOOST_NO_VARIADIC_TEMPLATES
-#define BOOST_NO_VARIADIC_MACROS
 
 #ifdef c_plusplus
 // EDG has "long long" in non-strict mode

Modified: branches/release/boost/config/compiler/gcc.hpp
==============================================================================
--- branches/release/boost/config/compiler/gcc.hpp (original)
+++ branches/release/boost/config/compiler/gcc.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -89,7 +89,6 @@
 # define BOOST_NO_EXCEPTIONS
 #endif
 
-
 //
 // Threading support: Turn this on unconditionally here (except for
 // those platforms where we can know for sure). It will get turned off again
@@ -148,8 +147,6 @@
 
 // C++0x features not implemented in any GCC version
 //
-#define BOOST_NO_CONSTEXPR
-#define BOOST_NO_NULLPTR
 #define BOOST_NO_TEMPLATE_ALIASES
 
 // C++0x features in 4.3.n and later
@@ -211,6 +208,13 @@
 # define BOOST_NO_UNICODE_LITERALS
 #endif
 
+// C++0x features in 4.5.n and later
+//
+#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 6) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
+#define BOOST_NO_CONSTEXPR
+#define BOOST_NO_NULLPTR
+#endif
+
 // ConceptGCC compiler:
 // http://www.generic-programming.org/software/ConceptGCC/
 #ifdef __GXX_CONCEPTS__
@@ -231,8 +235,8 @@
 # error "Compiler not configured - please reconfigure"
 #endif
 //
-// last known and checked version is 4.4 (Pre-release):
-#if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 4))
+// last known and checked version is 4.6 (Pre-release):
+#if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 6))
 # if defined(BOOST_ASSERT_CONFIG)
 # error "Unknown compiler version - please run the configure tests and report the results"
 # else

Modified: branches/release/boost/config/compiler/metrowerks.hpp
==============================================================================
--- branches/release/boost/config/compiler/metrowerks.hpp (original)
+++ branches/release/boost/config/compiler/metrowerks.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -12,6 +12,8 @@
 
 // Metrowerks C++ compiler setup:
 
+#define BOOST_MWERKS __MWERKS__
+
 // locale support is disabled when linking with the dynamic runtime
 # ifdef _MSL_NO_LOCALE
 # define BOOST_NO_STD_LOCALE

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 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -11,6 +11,10 @@
 
 // Sun C++ compiler setup:
 
+// Macro identifying the Sun compiler
+
+#define BOOST_SUNCC __SUNPRO_CC
+
 # if __SUNPRO_CC <= 0x500
 # define BOOST_NO_MEMBER_TEMPLATES
 # define BOOST_NO_FUNCTION_TEMPLATE_ORDERING

Modified: branches/release/boost/config/compiler/visualc.hpp
==============================================================================
--- branches/release/boost/config/compiler/visualc.hpp (original)
+++ branches/release/boost/config/compiler/visualc.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -37,6 +37,9 @@
    //
 #endif
 
+/// Visual Studio has no fenv.h
+#define BOOST_NO_FENV_H
+
 #if (_MSC_VER <= 1300) // 1300 == VC++ 7.0
 
 # if !defined(_MSC_EXTENSIONS) && !defined(BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS) // VC7 bug with /Za
@@ -94,10 +97,6 @@
 # define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
 #endif
 
-#if _MSC_VER <= 1600 // 1600 == VC++ 10.0
-# define BOOST_NO_TWO_PHASE_NAME_LOOKUP
-#endif
-
 #if _MSC_VER == 1500 // 1500 == VC++ 9.0
    // A bug in VC9:
 # define BOOST_NO_ADL_BARRIER
@@ -181,6 +180,7 @@
 #define BOOST_NO_STATIC_ASSERT
 #define BOOST_NO_NULLPTR
 #endif // _MSC_VER < 1600
+
 #if _MSC_VER >= 1600
 #define BOOST_HAS_STDINT_H
 #endif
@@ -198,10 +198,11 @@
 #define BOOST_NO_INITIALIZER_LISTS
 #define BOOST_NO_RAW_LITERALS
 #define BOOST_NO_SCOPED_ENUMS
-#define BOOST_NO_SFINAE_EXPR
 #define BOOST_NO_TEMPLATE_ALIASES
 #define BOOST_NO_UNICODE_LITERALS
 #define BOOST_NO_VARIADIC_TEMPLATES
+#define BOOST_NO_SFINAE_EXPR
+#define BOOST_NO_TWO_PHASE_NAME_LOOKUP
 //
 // prefix and suffix headers:
 //

Modified: branches/release/boost/config/platform/aix.hpp
==============================================================================
--- branches/release/boost/config/platform/aix.hpp (original)
+++ branches/release/boost/config/platform/aix.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,4 +1,5 @@
 // (C) Copyright John Maddock 2001 - 2002.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -9,6 +10,13 @@
 
 #define BOOST_PLATFORM "IBM Aix"
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
+#define BOOST_AIX 1
+
 #define BOOST_HAS_UNISTD_H
 #define BOOST_HAS_NL_TYPES_H
 #define BOOST_HAS_NANOSLEEP

Modified: branches/release/boost/config/platform/amigaos.hpp
==============================================================================
--- branches/release/boost/config/platform/amigaos.hpp (original)
+++ branches/release/boost/config/platform/amigaos.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,4 +1,5 @@
 // (C) Copyright John Maddock 2002.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -7,6 +8,8 @@
 
 #define BOOST_PLATFORM "AmigaOS"
 
+#define BOOST_AMIGA 1
+
 #define BOOST_DISABLE_THREADS
 #define BOOST_NO_CWCHAR
 #define BOOST_NO_STD_WSTRING

Modified: branches/release/boost/config/platform/beos.hpp
==============================================================================
--- branches/release/boost/config/platform/beos.hpp (original)
+++ branches/release/boost/config/platform/beos.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,4 +1,5 @@
 // (C) Copyright John Maddock 2001.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -9,6 +10,13 @@
 
 #define BOOST_PLATFORM "BeOS"
 
+#define BOOST_BEOS 1
+
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
 #define BOOST_NO_CWCHAR
 #define BOOST_NO_CWCTYPE
 #define BOOST_HAS_UNISTD_H

Modified: branches/release/boost/config/platform/bsd.hpp
==============================================================================
--- branches/release/boost/config/platform/bsd.hpp (original)
+++ branches/release/boost/config/platform/bsd.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,6 +1,7 @@
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Darin Adler 2001.
 // (C) Copyright Douglas Gregor 2002.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -9,18 +10,30 @@
 
 // generic BSD config options:
 
-#if !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__OpenBSD__) && !defined(__DragonFly__)
-#error "This platform is not BSD"
+#if !defined(__FreeBSD__) && \
+ !defined(__NetBSD__) && \
+ !defined(__OpenBSD__) && \
+ !defined(__DragonFly__)
+ #error "This platform is not BSD"
 #endif
 
+#define BOOST_NIX 1
+#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
 #ifdef __FreeBSD__
-#define BOOST_PLATFORM "FreeBSD " BOOST_STRINGIZE(__FreeBSD__)
+ #define BOOST_PLATFORM "FreeBSD " BOOST_STRINGIZE(__FreeBSD__)
+ #define BOOST_FREEBSD __FreeBSD__
 #elif defined(__NetBSD__)
-#define BOOST_PLATFORM "NetBSD " BOOST_STRINGIZE(__NetBSD__)
+ #define BOOST_PLATFORM "NetBSD " BOOST_STRINGIZE(__NetBSD__)
+ #define BOOST_NETBSD __NetBSD__
 #elif defined(__OpenBSD__)
-#define BOOST_PLATFORM "OpenBSD " BOOST_STRINGIZE(__OpenBSD__)
+ #define BOOST_PLATFORM "OpenBSD " BOOST_STRINGIZE(__OpenBSD__)
+ #define BOOST_OPENBSD __OpenBSD__
 #elif defined(__DragonFly__)
-#define BOOST_PLATFORM "DragonFly " BOOST_STRINGIZE(__DragonFly__)
+ #define BOOST_PLATFORM "DragonFly " BOOST_STRINGIZE(__DragonFly__)
+ #define BOOST_DFBSD __DragonFly__
 #endif
 
 //

Modified: branches/release/boost/config/platform/cygwin.hpp
==============================================================================
--- branches/release/boost/config/platform/cygwin.hpp (original)
+++ branches/release/boost/config/platform/cygwin.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,52 +1,56 @@
-// (C) Copyright John Maddock 2001 - 2003.
-// 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 for most recent version.
+// (C) Copyright John Maddock 2001 - 2003
+// (C) Copyright Bryce Lelbach 2010
+//
+// 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 for most recent version.
 
-// cygwin specific config options:
+#define BOOST_PLATFORM "Cygwin" // Platform name.
+#define BOOST_CYGWIN __CYGWIN__ // Boost platform ID macros.
 
-#define BOOST_PLATFORM "Cygwin"
 #define BOOST_HAS_DIRENT_H
 #define BOOST_HAS_LOG1P
 #define BOOST_HAS_EXPM1
 
-//
-// Threading API:
-// See if we have POSIX threads, if we do use them, otherwise
-// revert to native Win threads.
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
+// See if we have POSIX threads, otherwise revert to native Win threads.
 #define BOOST_HAS_UNISTD_H
 #include <unistd.h>
-#if defined(_POSIX_THREADS) && (_POSIX_THREADS+0 >= 0) && !defined(BOOST_HAS_WINTHREADS)
-# define BOOST_HAS_PTHREADS
-# define BOOST_HAS_SCHED_YIELD
-# define BOOST_HAS_GETTIMEOFDAY
-# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
-# define BOOST_HAS_SIGACTION
+
+#if defined(_POSIX_THREADS) && (_POSIX_THREADS + 0 >= 0) && \
+ !defined(BOOST_HAS_WINTHREADS)
+ #define BOOST_HAS_PTHREADS
+ #define BOOST_HAS_SCHED_YIELD
+ #define BOOST_HAS_GETTIMEOFDAY
+ #define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
+ #define BOOST_HAS_SIGACTION
 #else
-# if !defined(BOOST_HAS_WINTHREADS)
-# define BOOST_HAS_WINTHREADS
-# endif
-# define BOOST_HAS_FTIME
+ #if !defined(BOOST_HAS_WINTHREADS)
+ #define BOOST_HAS_WINTHREADS
+ #endif
+ #define BOOST_HAS_FTIME
 #endif
 
-//
-// find out if we have a stdint.h, there should be a better way to do this:
-//
+// Find out if we have a stdint.h, there should be a better way to do this.
 #include <sys/types.h>
+
 #ifdef _STDINT_H
-#define BOOST_HAS_STDINT_H
+ #define BOOST_HAS_STDINT_H
 #endif
 
-// boilerplate code:
+/// Cygwin has no fenv.h
+#define BOOST_NO_FENV_H
+
 #include <boost/config/posix_features.hpp>
 
-//
-// Cygwin lies about XSI conformance, there is no nl_types.h:
-//
+// Cygwin lies about XSI conformance, there is no nl_types.h.
 #ifdef BOOST_HAS_NL_TYPES_H
-# undef BOOST_HAS_NL_TYPES_H
+ #undef BOOST_HAS_NL_TYPES_H
 #endif
  
 

Modified: branches/release/boost/config/platform/hpux.hpp
==============================================================================
--- branches/release/boost/config/platform/hpux.hpp (original)
+++ branches/release/boost/config/platform/hpux.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -3,6 +3,7 @@
 // (C) Copyright David Abrahams 2002.
 // (C) Copyright Toon Knapen 2003.
 // (C) Copyright Boris Gubenko 2006 - 2007.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -13,6 +14,13 @@
 
 #define BOOST_PLATFORM "HP-UX"
 
+#define BOOST_HPUX 1 // platform ID macro
+
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
 // In principle, HP-UX has a nice <stdint.h> under the name <inttypes.h>
 // However, it has the following problem:
 // Use of UINT32_C(0) results in "0u l" for the preprocessed source

Modified: branches/release/boost/config/platform/irix.hpp
==============================================================================
--- branches/release/boost/config/platform/irix.hpp (original)
+++ branches/release/boost/config/platform/irix.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,5 +1,6 @@
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Jens Maurer 2003.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -11,6 +12,11 @@
 
 #define BOOST_PLATFORM "SGI Irix"
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
 #define BOOST_NO_SWPRINTF
 //
 // these are not auto detected by POSIX feature tests:

Modified: branches/release/boost/config/platform/linux.hpp
==============================================================================
--- branches/release/boost/config/platform/linux.hpp (original)
+++ branches/release/boost/config/platform/linux.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,5 +1,6 @@
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Jens Maurer 2001 - 2003.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -13,6 +14,13 @@
 // make sure we have __GLIBC_PREREQ if available at all
 #include <cstdlib>
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
+#define BOOST_LINUX 1
+
 //
 // <stdint.h> added to glibc 2.1.1
 // We can only test for 2.1 though:

Modified: branches/release/boost/config/platform/macos.hpp
==============================================================================
--- branches/release/boost/config/platform/macos.hpp (original)
+++ branches/release/boost/config/platform/macos.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,6 +1,7 @@
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Darin Adler 2001 - 2002.
 // (C) Copyright Bill Kempf 2002.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -13,6 +14,11 @@
 
 #if __MACH__ && !defined(_MSL_USING_MSL_C)
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
 // Using the Mac OS X system BSD-style C library.
 
 # ifndef BOOST_HAS_UNISTD_H

Modified: branches/release/boost/config/platform/qnxnto.hpp
==============================================================================
--- branches/release/boost/config/platform/qnxnto.hpp (original)
+++ branches/release/boost/config/platform/qnxnto.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,4 +1,5 @@
 // (C) Copyright Jim Douglas 2005.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -7,8 +8,15 @@
 
 // QNX specific config options:
 
+#define BOOST_QNX 1
+
 #define BOOST_PLATFORM "QNX"
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+//#define BOOST_TRADEMARK_NIX 1
+#define BOOST_FUNCTIONAL_NIX 1
+
 #define BOOST_HAS_UNISTD_H
 #include <boost/config/posix_features.hpp>
 

Modified: branches/release/boost/config/platform/solaris.hpp
==============================================================================
--- branches/release/boost/config/platform/solaris.hpp (original)
+++ branches/release/boost/config/platform/solaris.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,5 +1,6 @@
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Jens Maurer 2003.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -10,6 +11,11 @@
 
 #define BOOST_PLATFORM "Sun Solaris"
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
 #define BOOST_HAS_GETTIMEOFDAY
 
 // boilerplate code:

Modified: branches/release/boost/config/platform/symbian.hpp
==============================================================================
--- branches/release/boost/config/platform/symbian.hpp (original)
+++ branches/release/boost/config/platform/symbian.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,6 +1,7 @@
 // (C) Copyright Yuriy Krasnoschek 2009.
 // (C) Copyright John Maddock 2001 - 2003.
 // (C) Copyright Jens Maurer 2001 - 2003.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -9,13 +10,16 @@
 
 // symbian specific config options:
 
-
 #define BOOST_PLATFORM "Symbian"
 #define BOOST_SYMBIAN 1
 
-
 #if defined(__S60_3X__)
-// Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL
+// Open C / C++ plugin was introdused in this SDK, earlier versions don't have
+// CRT / STL
+# define BOOST_NIX 1
+//# define BOOST_GENETIC_NIX 1
+//# define BOOST_TRADEMARK_NIX 1
+# define BOOST_FUNCTIONAL_NIX 1
 # define BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK
 // make sure we have __GLIBC_PREREQ if available at all
 # include <cstdlib>

Modified: branches/release/boost/config/platform/vxworks.hpp
==============================================================================
--- branches/release/boost/config/platform/vxworks.hpp (original)
+++ branches/release/boost/config/platform/vxworks.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1,4 +1,5 @@
 // (C) Copyright Dustin Spicuzza 2009.
+// (C) Copyright Bryce Lelbach 2010
 // 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)
@@ -23,6 +24,11 @@
 #define _POSIX_TIMERS 1
 #define _POSIX_THREADS 1
 
+#define BOOST_NIX 1
+//#define BOOST_GENETIC_NIX 1
+#define BOOST_TRADEMARK_NIX 1
+//#define BOOST_FUNCTIONAL_NIX 1
+
 // vxworks doesn't work with asio serial ports
 #define BOOST_ASIO_DISABLE_SERIAL_PORT
 

Modified: branches/release/boost/config/platform/win32.hpp
==============================================================================
--- branches/release/boost/config/platform/win32.hpp (original)
+++ branches/release/boost/config/platform/win32.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -31,7 +31,6 @@
 # define BOOST_SYMBOL_IMPORT __declspec(dllimport)
 #endif
 
-
 #if defined(__MINGW32__) && ((__MINGW32_MAJOR_VERSION > 2) || ((__MINGW32_MAJOR_VERSION == 2) && (__MINGW32_MINOR_VERSION >= 0)))
 # define BOOST_HAS_STDINT_H
 # define __STDC_LIMIT_MACROS
@@ -39,6 +38,11 @@
 # define BOOST_HAS_UNISTD_H
 #endif
 
+#if defined(__MINGW32__) && (__GNUC__ >= 4)
+# define BOOST_HAS_EXPM1
+# define BOOST_HAS_LOG1P
+# define BOOST_HAS_GETTIMEOFDAY
+#endif
 //
 // Win32 will normally be using native Win32 threads,
 // but there is a pthread library avaliable as an option,

Modified: branches/release/boost/config/stdlib/dinkumware.hpp
==============================================================================
--- branches/release/boost/config/stdlib/dinkumware.hpp (original)
+++ branches/release/boost/config/stdlib/dinkumware.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -107,6 +107,7 @@
 # define BOOST_NO_0X_HDR_UNORDERED_SET
 # define BOOST_NO_0X_HDR_TUPLE
 # define BOOST_NO_0X_HDR_TYPEINDEX
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
 #endif
 
 #if !defined(_HAS_TR1_IMPORTS) && !defined(BOOST_NO_0X_HDR_TUPLE)
@@ -125,7 +126,6 @@
 # define BOOST_NO_0X_HDR_MUTEX
 # define BOOST_NO_0X_HDR_RATIO
 # define BOOST_NO_0X_HDR_THREAD
-# define BOOST_NO_NUMERIC_LIMITS_LOWEST
 
 #ifdef _CPPLIB_VER
 # define BOOST_DINKUMWARE_STDLIB _CPPLIB_VER

Modified: branches/release/boost/config/stdlib/libstdcpp3.hpp
==============================================================================
--- branches/release/boost/config/stdlib/libstdcpp3.hpp (original)
+++ branches/release/boost/config/stdlib/libstdcpp3.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -54,7 +54,6 @@
 # define BOOST_HAS_THREADS
 #endif
 
-
 #if !defined(_GLIBCPP_USE_LONG_LONG) \
     && !defined(_GLIBCXX_USE_LONG_LONG)\
     && defined(BOOST_HAS_LONG_LONG)
@@ -63,6 +62,16 @@
 # undef BOOST_HAS_LONG_LONG
 #endif
 
+// Apple doesn't seem to reliably defined a *unix* macro
+#if !defined(CYGWIN) && ( defined(__unix__) \
+ || defined(__unix) \
+ || defined(unix) \
+ || defined(__APPLE__) \
+ || defined(__APPLE) \
+ || defined(APPLE))
+# include <unistd.h>
+#endif
+
 #if defined(__GLIBCXX__) || (defined(__GLIBCPP__) && __GLIBCPP__>=20020514) // GCC >= 3.1.0
 # define BOOST_STD_EXTENSION_NAMESPACE __gnu_cxx
 # define BOOST_HAS_SLIST

Modified: branches/release/boost/config/stdlib/sgi.hpp
==============================================================================
--- branches/release/boost/config/stdlib/sgi.hpp (original)
+++ branches/release/boost/config/stdlib/sgi.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -40,6 +40,17 @@
 # define BOOST_NO_STRINGSTREAM
 #endif
 
+// Apple doesn't seem to reliably defined a *unix* macro
+#if !defined(CYGWIN) && ( defined(__unix__) \
+ || defined(__unix) \
+ || defined(unix) \
+ || defined(__APPLE__) \
+ || defined(__APPLE) \
+ || defined(APPLE))
+# include <unistd.h>
+#endif
+
+
 //
 // Assume no std::locale without own iostreams (this may be an
 // incorrect assumption in some cases):

Modified: branches/release/boost/config/stdlib/stlport.hpp
==============================================================================
--- branches/release/boost/config/stdlib/stlport.hpp (original)
+++ branches/release/boost/config/stdlib/stlport.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -16,6 +16,16 @@
 # endif
 #endif
 
+// Apple doesn't seem to reliably defined a *unix* macro
+#if !defined(CYGWIN) && ( defined(__unix__) \
+ || defined(__unix) \
+ || defined(unix) \
+ || defined(__APPLE__) \
+ || defined(__APPLE) \
+ || defined(APPLE))
+# include <unistd.h>
+#endif
+
 //
 // __STL_STATIC_CONST_INIT_BUG implies BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
 // for versions prior to 4.1(beta)

Modified: branches/release/boost/config/stdlib/vacpp.hpp
==============================================================================
--- branches/release/boost/config/stdlib/vacpp.hpp (original)
+++ branches/release/boost/config/stdlib/vacpp.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -12,6 +12,16 @@
 #define BOOST_HAS_MACRO_USE_FACET
 #define BOOST_NO_STD_MESSAGES
 
+// Apple doesn't seem to reliably defined a *unix* macro
+#if !defined(CYGWIN) && ( defined(__unix__) \
+ || defined(__unix) \
+ || defined(unix) \
+ || defined(__APPLE__) \
+ || defined(__APPLE) \
+ || defined(APPLE))
+# include <unistd.h>
+#endif
+
 // C++0x headers not yet implemented
 //
 # define BOOST_NO_0X_HDR_ARRAY

Modified: branches/release/boost/config/suffix.hpp
==============================================================================
--- branches/release/boost/config/suffix.hpp (original)
+++ branches/release/boost/config/suffix.hpp 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -349,6 +349,13 @@
 #define BOOST_HAS_RVALUE_REFS
 #endif
 
+//
+// Set BOOST_HAS_VARIADIC_TMPL when BOOST_NO_VARIADIC_TEMPLATES is not defined
+//
+#if !defined(BOOST_NO_VARIADIC_TEMPLATES) && !defined(BOOST_HAS_VARIADIC_TMPL)
+#define BOOST_HAS_VARIADIC_TMPL
+#endif
+
 // BOOST_HAS_ABI_HEADERS
 // This macro gets set if we have headers that fix the ABI,
 // and prevent ODR violations when linking to external libraries:
@@ -632,6 +639,10 @@
 # if defined(unix) || defined(__unix) || defined(_XOPEN_SOURCE) \
          || defined(_POSIX_SOURCE)
 # define BOOST_PLATFORM "Generic Unix"
+# define BOOST_NIX 1
+//# define BOOST_GENETIC_NIX 1
+//# define BOOST_TRADEMARK_NIX 1
+# define BOOST_FUNCTIONAL_NIX 1
 # else
 # define BOOST_PLATFORM "Unknown"
 # endif
@@ -643,5 +654,19 @@
 # ifndef BOOST_GPU_ENABLED
 # define BOOST_GPU_ENABLED
 # endif
+
+//
+// constexpr workarounds
+//
+#if defined(BOOST_NO_CONSTEXPR)
+#define BOOST_CONSTEXPR
+#define BOOST_CONSTEXPR_OR_CONST const
+#else
+#define BOOST_CONSTEXPR constexpr
+#define BOOST_CONSTEXPR_OR_CONST constexpr
+#endif
+
+#define BOOST_STATIC_CONSTEXPR static BOOST_CONSTEXPR_OR_CONST
+
 #endif
 

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 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -1697,6 +1697,26 @@
 <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>
@@ -3200,6 +3220,77 @@
                 </p>
               </td>
 </tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_CONSTEXPR</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Some compilers don't support the use of <code class="computeroutput"><span class="identifier">constexpr</span></code>.
+ This macro expands to nothing on those compilers, and <code class="computeroutput"><span class="identifier">constexpr</span></code> elsewhere. For example,
+ when defining a constexpr function or constructor replace:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="identifier">constexpr</span> <span class="identifier">tuple</span><span class="special">();</span>
+</pre>
+<p>
+ with:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="identifier">BOOST_CONSTEXPR</span> <span class="identifier">tuple</span><span class="special">();</span>
+</pre>
+<p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_CONSTEXPR_OR_CONST</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Some compilers don't support the use of <code class="computeroutput"><span class="identifier">constexpr</span></code>.
+ This macro expands to <code class="computeroutput"><span class="keyword">const</span></code>
+ on those compilers, and <code class="computeroutput"><span class="identifier">constexpr</span></code>
+ elsewhere. For example, when defining const expr variables replace:
+
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">static</span> <span class="identifier">constexpr</span> <span class="identifier">UIntType</span> <span class="identifier">xor_mask</span> <span class="special">=</span> <span class="identifier">a</span><span class="special">;</span>
+</pre>
+<p>
+ with:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">static</span> <span class="identifier">BOOST_CONSTEXPR_OR_CONST</span> <span class="identifier">UIntType</span> <span class="identifier">xor_mask</span> <span class="special">=</span> <span class="identifier">a</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_STATIC_CONSTEXPR</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ This is a shortcut for <code class="computeroutput"><span class="keyword">static</span>
+ <span class="identifier">BOOST_CONSTEXPR_OR_CONST</span></code>For
+ example, when defining const expr variables replace:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="keyword">static</span> <span class="identifier">constexpr</span> <span class="identifier">UIntType</span> <span class="identifier">xor_mask</span> <span class="special">=</span> <span class="identifier">a</span><span class="special">;</span>
+</pre>
+<p>
+ with:
+</p>
+<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="identifier">BOOST_STATIC_CONSTEXPR</span> <span class="identifier">UIntType</span> <span class="identifier">xor_mask</span> <span class="special">=</span> <span class="identifier">a</span><span class="special">;</span>
+</pre>
+<p>
+ </p>
+ </td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -3392,6 +3483,96 @@
 <tr>
 <td>
                 <p>
+ <code class="computeroutput"><span class="identifier">BOOST_LINUX</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <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">hpp</span><span class="special">&gt;</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Defined if the system kernel is Linux
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_NIX</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <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">hpp</span><span class="special">&gt;</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Defined if the system is POSIX compliant
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_GENETIC_NIX</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <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">hpp</span><span class="special">&gt;</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Defined if the system can trace its ancestry to the original AT&amp;T
+ codebase or designs, but is not certified by the Open Group. This
+ is the case for modern open-source BSD systems.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_TRADEMARK_NIX</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <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">hpp</span><span class="special">&gt;</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Systems certified as POSIX compliant by the Open Group. These systems
+ can use the UNIX trademark. Most commercially developed *nix systems
+ fall into this category.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
+ <code class="computeroutput"><span class="identifier">BOOST_FUNCTIONAL_NIX</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ <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">hpp</span><span class="special">&gt;</span></code>
+ </p>
+ </td>
+<td>
+ <p>
+ Systems which behave in a manner roughly consistent with POSIX
+ standards. Linux and Minix fall into this category.
+ </p>
+ </td>
+</tr>
+<tr>
+<td>
+ <p>
                   <code class="computeroutput"><span class="identifier">BOOST_DINKUMWARE_STDLIB</span></code>
                 </p>
               </td>

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 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -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="id1010243"></a><p>
+<a name="id896648"></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>
@@ -950,7 +950,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: September 26, 2010 at 09:24:20 GMT</small></p></td>
+<td align="left"><p><small>Last revised: November 25, 2010 at 10:30:55 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 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -71,6 +71,11 @@
 [[`BOOST_NO_CWCTYPE`][Platform][
 The Platform does not provide `<wctype.h>` and `<cwctype>`.
 ]]
+[[`BOOST_NO_FENV_H`][Platform, Standard library][
+The C standard library doesn't provide `<fenv.h>`. [@../../../../boost/detail/fenv.hpp
+`<boost/detail/fenv.hpp>`] should be included instead of `<fenv.h>` for maximum
+portability on platforms which do provide `<fenv.h>`.
+]]
 [[`BOOST_NO_DEPENDENT_NESTED_DERIVATIONS`][Compiler][
 The compiler fails to compile a nested class that has a dependent base class:
 ``
@@ -798,6 +803,38 @@
 used to create a mangled name in combination with a predefined macro such a
 \_\_LINE__.
 ]]
+[[`BOOST_CONSTEXPR`][
+Some compilers don't support the use of `constexpr`. This macro expands to nothing on those compilers, and `constexpr`
+elsewhere. For example, when defining a constexpr function or constructor replace:
+``
+ constexpr tuple();
+``
+with:
+``
+ BOOST_CONSTEXPR tuple();
+``
+]]
+[[`BOOST_CONSTEXPR_OR_CONST`][
+Some compilers don't support the use of `constexpr`. This macro expands to `const` on those compilers, and `constexpr`
+elsewhere. For example, when defining const expr variables replace:
+``
+ static constexpr UIntType xor_mask = a;
+``
+with:
+``
+ static BOOST_CONSTEXPR_OR_CONST UIntType xor_mask = a;
+``
+]]
+[[`BOOST_STATIC_CONSTEXPR`][
+This is a shortcut for `static BOOST_CONSTEXPR_OR_CONST`For example, when defining const expr variables replace:
+``
+ static constexpr UIntType xor_mask = a;
+``
+with:
+``
+ BOOST_STATIC_CONSTEXPR UIntType xor_mask = a;
+``
+]]
 ]
 
 [endsect]
@@ -845,6 +882,26 @@
 [[`BOOST_WINDOWS`][`<boost/config.hpp>`][
 Defined if the Windows platfrom API is available.
 ]]
+[[`BOOST_LINUX`][`<boost/config.hpp>`][
+Defined if the system kernel is Linux
+]]
+[[`BOOST_NIX`][`<boost/config.hpp>`][
+Defined if the system is POSIX compliant
+]]
+[[`BOOST_GENETIC_NIX`][`<boost/config.hpp>`][
+Defined if the system can trace its ancestry to the original AT&T codebase or
+designs, but is not certified by the Open Group. This is the case for modern
+open-source BSD systems.
+]]
+[[`BOOST_TRADEMARK_NIX`][`<boost/config.hpp>`][
+Systems certified as POSIX compliant by the Open Group. These systems can use
+the UNIX trademark. Most commercially developed *nix systems fall into this
+category.
+]]
+[[`BOOST_FUNCTIONAL_NIX`][`<boost/config.hpp>`][
+Systems which behave in a manner roughly consistent with POSIX standards. Linux
+and Minix fall into this category.
+]]
 [[`BOOST_DINKUMWARE_STDLIB`][`<boost/config.hpp>`][
 Defined if the dinkumware standard library is in use, takes the same value
 as the Dinkumware library version macro `_CPPLIB_VER` if defined, otherwise 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 2010-12-31 12:08:07 EST (Fri, 31 Dec 2010)
@@ -27,6 +27,10 @@
 #include <unistd.h>
 #endif
 
+#if defined(__MINGW32__)
+# include <_mingw.h>
+#endif
+
 static unsigned int indent = 4;
 static unsigned int width = 40;
 
@@ -794,6 +798,8 @@
    PRINT_MACRO(_THREAD_SAFE);
    PRINT_MACRO(_XOPEN_SOURCE_EXTENDED);
    PRINT_MACRO(XPG);
+ PRINT_MACRO(__MINGW32_MAJOR_VERSION);
+ PRINT_MACRO(__MINGW32_MINOR_VERSION);
    // POSIX:
    PRINT_MACRO(_POSIX_ADVISORY_INFO);
    PRINT_MACRO(_POSIX_ASYNCHRONOUS_IO);
@@ -900,6 +906,7 @@
    PRINT_MACRO(BOOST_DISABLE_THREADS);
    PRINT_MACRO(BOOST_DISABLE_WIN32);
    PRINT_MACRO(BOOST_HAS_THREADS);
+ PRINT_MACRO(BOOST_WINDOWS);
 
    // BEGIN GENERATED BLOCK DO NOT EDIT THIS!!!!!!
    PRINT_MACRO(BOOST_BCB_PARTIAL_SPECIALIZATION_BUG);
@@ -1071,30 +1078,15 @@
    PRINT_MACRO(BOOST_NO_VARIADIC_TEMPLATES);
    PRINT_MACRO(BOOST_NO_VOID_RETURNS);
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
    // END GENERATED BLOCK
 
    PRINT_MACRO(BOOST_INTEL);
    PRINT_MACRO(BOOST_MSVC);
    PRINT_MACRO(BOOST_STD_EXTENSION_NAMESPACE);
    PRINT_MACRO(BOOST_UNREACHABLE_RETURN(0));
+ PRINT_MACRO(BOOST_CONSTEXPR);
+ PRINT_MACRO(BOOST_CONSTEXPR_OR_CONST);
+ PRINT_MACRO(BOOST_STATIC_CONSTEXPR);
 }
 
 void print_separator()


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