diff --git a/doc/html/boost_config/boost_macro_reference.html b/doc/html/boost_config/boost_macro_reference.html
index b7390a01..5287e835 100644
--- a/doc/html/boost_config/boost_macro_reference.html
+++ b/doc/html/boost_config/boost_macro_reference.html
@@ -533,6 +533,23 @@
BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS
diff --git a/doc/html/index.html b/doc/html/index.html
index fe1235db..48677667 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -28,7 +28,7 @@
Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock
-Last revised: August 17, 2010 at 09:09:56 GMT |
+Last revised: September 26, 2010 at 09:24:20 GMT |
|
diff --git a/doc/macro_reference.qbk b/doc/macro_reference.qbk
index 54d2ea2b..1c7e8c46 100644
--- a/doc/macro_reference.qbk
+++ b/doc/macro_reference.qbk
@@ -144,6 +144,9 @@ The C++ implementation does not provide the `` header. Never check for
this symbol in library code; always include ``, which
guarantees to provide `std::numeric_limits`.
]]
+[[`BOOST_NO_NUMERIC_LIMITS_LOWEST`][Standard library][
+Static function `numeric_limits::lowest()` is not available for use.
+]]
[[`BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS`][Standard library][
Constants such as `numeric_limits::is_signed` are not available for use
at compile-time.
diff --git a/include/boost/config/platform/cygwin.hpp b/include/boost/config/platform/cygwin.hpp
index 5627dd60..8e1bcb01 100644
--- a/include/boost/config/platform/cygwin.hpp
+++ b/include/boost/config/platform/cygwin.hpp
@@ -41,6 +41,13 @@
// boilerplate code:
#include
+
+//
+// Cygwin lies about XSI conformance, there is no nl_types.h:
+//
+#ifdef BOOST_HAS_NL_TYPES_H
+# undef BOOST_HAS_NL_TYPES_H
+#endif
diff --git a/include/boost/config/stdlib/dinkumware.hpp b/include/boost/config/stdlib/dinkumware.hpp
index ea8faf14..e33fef12 100644
--- a/include/boost/config/stdlib/dinkumware.hpp
+++ b/include/boost/config/stdlib/dinkumware.hpp
@@ -125,6 +125,7 @@
# 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
diff --git a/include/boost/config/stdlib/libcomo.hpp b/include/boost/config/stdlib/libcomo.hpp
index 97a39f3e..16a842ae 100644
--- a/include/boost/config/stdlib/libcomo.hpp
+++ b/include/boost/config/stdlib/libcomo.hpp
@@ -58,6 +58,7 @@
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
//
// Intrinsic type_traits support.
diff --git a/include/boost/config/stdlib/libstdcpp3.hpp b/include/boost/config/stdlib/libstdcpp3.hpp
index 815d605c..01dd4907 100644
--- a/include/boost/config/stdlib/libstdcpp3.hpp
+++ b/include/boost/config/stdlib/libstdcpp3.hpp
@@ -115,6 +115,12 @@
# define BOOST_NO_0X_HDR_THREAD
#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
+#endif
+
// C++0x headers not yet implemented
//
# define BOOST_NO_0X_HDR_CODECVT
diff --git a/include/boost/config/stdlib/modena.hpp b/include/boost/config/stdlib/modena.hpp
index 10792cda..147060d9 100644
--- a/include/boost/config/stdlib/modena.hpp
+++ b/include/boost/config/stdlib/modena.hpp
@@ -47,6 +47,7 @@
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
#define BOOST_STDLIB "Modena C++ standard library"
diff --git a/include/boost/config/stdlib/msl.hpp b/include/boost/config/stdlib/msl.hpp
index beb15de6..8185e351 100644
--- a/include/boost/config/stdlib/msl.hpp
+++ b/include/boost/config/stdlib/msl.hpp
@@ -71,6 +71,7 @@
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
#define BOOST_STDLIB "Metrowerks Standard Library version " BOOST_STRINGIZE(__MSL_CPP__)
diff --git a/include/boost/config/stdlib/roguewave.hpp b/include/boost/config/stdlib/roguewave.hpp
index 830c32ef..dcd0af84 100644
--- a/include/boost/config/stdlib/roguewave.hpp
+++ b/include/boost/config/stdlib/roguewave.hpp
@@ -177,4 +177,5 @@
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
diff --git a/include/boost/config/stdlib/sgi.hpp b/include/boost/config/stdlib/sgi.hpp
index 293886bc..4d426473 100644
--- a/include/boost/config/stdlib/sgi.hpp
+++ b/include/boost/config/stdlib/sgi.hpp
@@ -130,6 +130,7 @@
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
#define BOOST_STDLIB "SGI standard library"
diff --git a/include/boost/config/stdlib/stlport.hpp b/include/boost/config/stdlib/stlport.hpp
index bb6fe134..0e1c9b2b 100644
--- a/include/boost/config/stdlib/stlport.hpp
+++ b/include/boost/config/stdlib/stlport.hpp
@@ -225,6 +225,7 @@ namespace boost { using std::min; using std::max; }
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
#define BOOST_STDLIB "STLPort standard library version " BOOST_STRINGIZE(__SGI_STL_PORT)
diff --git a/include/boost/config/stdlib/vacpp.hpp b/include/boost/config/stdlib/vacpp.hpp
index 3504971f..0fc092f0 100644
--- a/include/boost/config/stdlib/vacpp.hpp
+++ b/include/boost/config/stdlib/vacpp.hpp
@@ -37,6 +37,7 @@
# define BOOST_NO_STD_UNORDERED // deprecated; see following
# define BOOST_NO_0X_HDR_UNORDERED_MAP
# define BOOST_NO_0X_HDR_UNORDERED_SET
+# define BOOST_NO_NUMERIC_LIMITS_LOWEST
#define BOOST_STDLIB "Visual Age default standard library"
diff --git a/test/all/Jamfile.v2 b/test/all/Jamfile.v2
index 483bf98f..3321838b 100644
--- a/test/all/Jamfile.v2
+++ b/test/all/Jamfile.v2
@@ -1,7 +1,7 @@
#
# Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND ***
-# This file was automatically generated on Tue Aug 17 09:59:01 2010
+# This file was automatically generated on Sat Sep 25 16:53:42 2010
# by libs/config/tools/generate.cpp
# Copyright John Maddock.
# Use, modification and distribution are subject to the
@@ -367,6 +367,9 @@ test-suite "BOOST_NO_LIMITS" :
test-suite "BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS" :
[ run ../no_limits_const_exp_pass.cpp ]
[ compile-fail ../no_limits_const_exp_fail.cpp ] ;
+test-suite "BOOST_NO_NUMERIC_LIMITS_LOWEST" :
+[ run ../no_limits_lowest_pass.cpp ]
+[ compile-fail ../no_limits_lowest_fail.cpp ] ;
test-suite "BOOST_NO_LONG_LONG_NUMERIC_LIMITS" :
[ run ../no_ll_limits_pass.cpp ]
[ compile-fail ../no_ll_limits_fail.cpp ] ;
diff --git a/test/boost_no_limits_lowest.ipp b/test/boost_no_limits_lowest.ipp
new file mode 100644
index 00000000..ae09aa72
--- /dev/null
+++ b/test/boost_no_limits_lowest.ipp
@@ -0,0 +1,31 @@
+// (C) Copyright Vicente J. Botet Escriba 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/libs/config for most recent version.
+
+// MACRO: BOOST_NO_NUMERIC_LIMITS_LOWEST
+// TITLE: static function lowest() in numeric_limits class
+// DESCRIPTION: static function numeric_limits::lowest() are not available for use.
+
+#include
+
+namespace boost_no_numeric_limits_lowest{
+
+int f()
+{
+ // this is never called, it just has to compile:
+ return std::numeric_limits::lowest();
+}
+
+int test()
+{
+ return 0;
+}
+
+}
+
+
+
+
diff --git a/test/config_info.cpp b/test/config_info.cpp
index cf62f529..1f6bb1da 100644
--- a/test/config_info.cpp
+++ b/test/config_info.cpp
@@ -1026,6 +1026,7 @@ void print_boost_macros()
PRINT_MACRO(BOOST_NO_MS_INT64_NUMERIC_LIMITS);
PRINT_MACRO(BOOST_NO_NESTED_FRIENDSHIP);
PRINT_MACRO(BOOST_NO_NULLPTR);
+ PRINT_MACRO(BOOST_NO_NUMERIC_LIMITS_LOWEST);
PRINT_MACRO(BOOST_NO_OPERATORS_IN_NAMESPACE);
PRINT_MACRO(BOOST_NO_PARTIAL_SPECIALIZATION_IMPLICIT_DEFAULT_ARGS);
PRINT_MACRO(BOOST_NO_POINTER_TO_MEMBER_CONST);
@@ -1086,6 +1087,8 @@ void print_boost_macros()
+
+
// END GENERATED BLOCK
PRINT_MACRO(BOOST_INTEL);
diff --git a/test/config_test.cpp b/test/config_test.cpp
index fdce11dd..90d13fd2 100644
--- a/test/config_test.cpp
+++ b/test/config_test.cpp
@@ -1,4 +1,4 @@
-// This file was automatically generated on Tue Aug 17 09:59:01 2010
+// This file was automatically generated on Sat Sep 25 16:53:42 2010
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
@@ -342,6 +342,11 @@ namespace boost_no_limits = empty_boost;
#else
namespace boost_no_limits_compile_time_constants = empty_boost;
#endif
+#ifndef BOOST_NO_NUMERIC_LIMITS_LOWEST
+#include "boost_no_limits_lowest.ipp"
+#else
+namespace boost_no_numeric_limits_lowest = empty_boost;
+#endif
#ifndef BOOST_NO_LONG_LONG_NUMERIC_LIMITS
#include "boost_no_ll_limits.ipp"
#else
@@ -1436,6 +1441,11 @@ int main( int, char *[] )
std::cerr << "Failed test for BOOST_NO_LIMITS_COMPILE_TIME_CONSTANTS at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
+ if(0 != boost_no_numeric_limits_lowest::test())
+ {
+ std::cerr << "Failed test for BOOST_NO_NUMERIC_LIMITS_LOWEST at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
if(0 != boost_no_long_long_numeric_limits::test())
{
std::cerr << "Failed test for BOOST_NO_LONG_LONG_NUMERIC_LIMITS at: " << __FILE__ << ":" << __LINE__ << std::endl;
|