|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r55361 - in trunk: boost/config/compiler libs/config/doc libs/config/test libs/config/test/all
From: bdawes_at_[hidden]
Date: 2009-08-02 10:01:02
Author: bemandawes
Date: 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
New Revision: 55361
URL: http://svn.boost.org/trac/boost/changeset/55361
Log:
Add BOOST_NO_SFINAE_EXPR and BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS (Mathias Gaunard)
Added:
trunk/libs/config/test/boost_no_function_template_default_args.ipp (contents, props changed)
trunk/libs/config/test/boost_no_sfinae_expr.ipp (contents, props changed)
trunk/libs/config/test/no_function_template_default_args_fail.cpp (contents, props changed)
trunk/libs/config/test/no_function_template_default_args_pass.cpp (contents, props changed)
trunk/libs/config/test/no_sfinae_expr_fail.cpp (contents, props changed)
trunk/libs/config/test/no_sfinae_expr_pass.cpp (contents, props changed)
Text files modified:
trunk/boost/config/compiler/borland.hpp | 2 ++
trunk/boost/config/compiler/codegear.hpp | 2 ++
trunk/boost/config/compiler/common_edg.hpp | 2 ++
trunk/boost/config/compiler/digitalmars.hpp | 1 +
trunk/boost/config/compiler/gcc.hpp | 16 +++++++++++++---
trunk/boost/config/compiler/hp_acc.hpp | 2 ++
trunk/boost/config/compiler/metrowerks.hpp | 2 ++
trunk/boost/config/compiler/mpw.hpp | 2 ++
trunk/boost/config/compiler/pgi.hpp | 2 ++
trunk/boost/config/compiler/sunpro_cc.hpp | 2 ++
trunk/boost/config/compiler/vacpp.hpp | 2 ++
trunk/boost/config/compiler/visualc.hpp | 2 ++
trunk/libs/config/doc/macro_reference.qbk | 6 ++++++
trunk/libs/config/test/all/Jamfile.v2 | 8 +++++++-
trunk/libs/config/test/config_info.cpp | 4 ++++
trunk/libs/config/test/config_test.cpp | 22 +++++++++++++++++++++-
16 files changed, 72 insertions(+), 5 deletions(-)
Modified: trunk/boost/config/compiler/borland.hpp
==============================================================================
--- trunk/boost/config/compiler/borland.hpp (original)
+++ trunk/boost/config/compiler/borland.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -168,12 +168,14 @@
#define BOOST_NO_CONSTEXPR
#define BOOST_NO_DEFAULTED_FUNCTIONS
#define BOOST_NO_DELETED_FUNCTIONS
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS // UTF-8 still not supported
#define BOOST_NO_VARIADIC_TEMPLATES
Modified: trunk/boost/config/compiler/codegear.hpp
==============================================================================
--- trunk/boost/config/compiler/codegear.hpp (original)
+++ trunk/boost/config/compiler/codegear.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -81,11 +81,13 @@
#define BOOST_NO_DEFAULTED_FUNCTIONS
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/common_edg.hpp
==============================================================================
--- trunk/boost/config/compiler/common_edg.hpp (original)
+++ trunk/boost/config/compiler/common_edg.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -75,11 +75,13 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/digitalmars.hpp
==============================================================================
--- trunk/boost/config/compiler/digitalmars.hpp (original)
+++ trunk/boost/config/compiler/digitalmars.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -75,6 +75,7 @@
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/gcc.hpp
==============================================================================
--- trunk/boost/config/compiler/gcc.hpp (original)
+++ trunk/boost/config/compiler/gcc.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -104,7 +104,6 @@
// C++0x features not implemented in any GCC version
//
#define BOOST_NO_CONSTEXPR
-#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
@@ -123,6 +122,7 @@
# define BOOST_HAS_VARIADIC_TMPL
#else
# define BOOST_NO_DECLTYPE
+# define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
# define BOOST_NO_RVALUE_REFERENCES
# define BOOST_NO_STATIC_ASSERT
@@ -149,6 +149,10 @@
# define BOOST_NO_UNICODE_LITERALS
#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__)
@@ -157,6 +161,12 @@
# define BOOST_NO_SCOPED_ENUMS
#endif
+// C++0x features in 4.5.n and later
+//
+#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
+# define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
+#endif
+
// ConceptGCC compiler:
// http://www.generic-programming.org/software/ConceptGCC/
#ifdef __GXX_CONCEPTS__
@@ -177,8 +187,8 @@
# error "Compiler not configured - please reconfigure"
#endif
//
-// last known and checked version is 4.3 (Pre-release):
-#if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 3))
+// last known and checked version is 4.4 (Pre-release):
+#if (__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ > 4))
# if defined(BOOST_ASSERT_CONFIG)
# error "Unknown compiler version - please run the configure tests and report the results"
# else
Modified: trunk/boost/config/compiler/hp_acc.hpp
==============================================================================
--- trunk/boost/config/compiler/hp_acc.hpp (original)
+++ trunk/boost/config/compiler/hp_acc.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -103,12 +103,14 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/metrowerks.hpp
==============================================================================
--- trunk/boost/config/compiler/metrowerks.hpp (original)
+++ trunk/boost/config/compiler/metrowerks.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -103,11 +103,13 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/mpw.hpp
==============================================================================
--- trunk/boost/config/compiler/mpw.hpp (original)
+++ trunk/boost/config/compiler/mpw.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -51,12 +51,14 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/pgi.hpp
==============================================================================
--- trunk/boost/config/compiler/pgi.hpp (original)
+++ trunk/boost/config/compiler/pgi.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -43,12 +43,14 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/sunpro_cc.hpp
==============================================================================
--- trunk/boost/config/compiler/sunpro_cc.hpp (original)
+++ trunk/boost/config/compiler/sunpro_cc.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -96,12 +96,14 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/vacpp.hpp
==============================================================================
--- trunk/boost/config/compiler/vacpp.hpp (original)
+++ trunk/boost/config/compiler/vacpp.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -72,11 +72,13 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_LAMBDAS
#define BOOST_NO_NULLPTR
#define BOOST_NO_RAW_LITERALS
#define BOOST_NO_RVALUE_REFERENCES
#define BOOST_NO_SCOPED_ENUMS
+#define BOOST_NO_SFINAE_EXPR
#define BOOST_NO_STATIC_ASSERT
#define BOOST_NO_TEMPLATE_ALIASES
#define BOOST_NO_UNICODE_LITERALS
Modified: trunk/boost/config/compiler/visualc.hpp
==============================================================================
--- trunk/boost/config/compiler/visualc.hpp (original)
+++ trunk/boost/config/compiler/visualc.hpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -168,10 +168,12 @@
#define BOOST_NO_DELETED_FUNCTIONS
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
#define BOOST_NO_EXTERN_TEMPLATE
+#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
#define BOOST_NO_INITIALIZER_LISTS
#define BOOST_NO_NULLPTR
#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
Modified: trunk/libs/config/doc/macro_reference.qbk
==============================================================================
--- trunk/libs/config/doc/macro_reference.qbk (original)
+++ trunk/libs/config/doc/macro_reference.qbk 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -204,6 +204,9 @@
The compiler does not support the "Substitution Failure Is Not An Error"
meta-programming idiom.
]]
+[[`BOOST_NO_SFINAE_EXPR`][Compiler][
+The compiler does not support usage of SFINAE with arbitrary expressions.
+]]
[[`BOOST_NO_STD_ALLOCATOR`][Standard library][
The C++ standard library does not provide a standards conforming
`std::allocator`.
@@ -580,6 +583,9 @@
[[`BOOST_NO_EXTERN_TEMPLATE`][The compiler does not support
explicit instantiation declarations for templates (`explicit template`).
]]
+[[`BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS`][The compiler does not support
+default template arguments for function templates.
+]]
[[`BOOST_NO_INITIALIZER_LISTS`][
The C++ compiler does not support C++0x initializer lists.
]]
Modified: trunk/libs/config/test/all/Jamfile.v2
==============================================================================
--- trunk/libs/config/test/all/Jamfile.v2 (original)
+++ trunk/libs/config/test/all/Jamfile.v2 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -1,7 +1,7 @@
#
# Regression test Jamfile for boost configuration setup.
# *** DO NOT EDIT THIS FILE BY HAND ***
-# This file was automatically generated on Thu May 21 11:08:48 2009
+# This file was automatically generated on Sun Aug 02 08:26:00 2009
# by libs/config/tools/generate.cpp
# Copyright John Maddock.
# Use, modification and distribution are subject to the
@@ -319,6 +319,9 @@
test-suite "BOOST_NO_EXTERN_TEMPLATE" :
[ run ../no_extern_template_pass.cpp ]
[ compile-fail ../no_extern_template_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 ] ;
test-suite "BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS" :
[ run ../no_function_type_spec_pass.cpp ]
[ compile-fail ../no_function_type_spec_fail.cpp ] ;
@@ -418,6 +421,9 @@
test-suite "BOOST_NO_SFINAE" :
[ run ../no_sfinae_pass.cpp ]
[ compile-fail ../no_sfinae_fail.cpp ] ;
+test-suite "BOOST_NO_SFINAE_EXPR" :
+[ run ../no_sfinae_expr_pass.cpp ]
+[ compile-fail ../no_sfinae_expr_fail.cpp ] ;
test-suite "BOOST_NO_STRINGSTREAM" :
[ run ../no_sstream_pass.cpp ]
[ compile-fail ../no_sstream_fail.cpp ] ;
Added: trunk/libs/config/test/boost_no_function_template_default_args.ipp
==============================================================================
--- (empty file)
+++ trunk/libs/config/test/boost_no_function_template_default_args.ipp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -0,0 +1,38 @@
+// (C) Copyright Mathias Gaunard 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 the most recent version.
+
+// MACRO: BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
+// TITLE: Default template arguments for function templates
+// DESCRIPTION: Default template arguments for function templates are not supported.
+
+namespace boost_no_function_template_default_args
+{
+
+template<typename T = int>
+T foo()
+{
+ return 0;
+}
+
+template<typename T, typename U>
+bool is_same(T, U)
+{
+ return false;
+}
+
+template<typename T>
+bool is_same(T, T)
+{
+ return true;
+}
+
+int test()
+{
+ return !is_same(foo<>(), 0) || is_same(foo<>(), 0L);
+}
+
+} // namespace boost_no_function_template_default_args
Added: trunk/libs/config/test/boost_no_sfinae_expr.ipp
==============================================================================
--- (empty file)
+++ trunk/libs/config/test/boost_no_sfinae_expr.ipp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -0,0 +1,37 @@
+// (C) Copyright Mathias Gaunard 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 the most recent version.
+
+// MACRO: BOOST_NO_SFINAE_EXPR
+// TITLE: SFINAE for expressions
+// DESCRIPTION: SFINAE for expressions not supported.
+
+namespace boost_no_sfinae_expr
+{
+
+template<typename T>
+struct has_foo
+{
+ typedef char NotFound;
+ struct Found { char x[2]; };
+
+ template<int> struct dummy {};
+
+ template<class X> static Found test(dummy< sizeof((*(X*)0).foo(), 0) >*);
+ template<class X> static NotFound test( ... );
+
+ static const bool value = (sizeof(Found) == sizeof(test<T>(0)));
+};
+
+struct test1 {};
+struct test2 { void foo(); };
+
+int test()
+{
+ return has_foo<test1>::value || !has_foo<test2>::value;
+}
+
+} // namespace boost_no_sfinae_expr
Modified: trunk/libs/config/test/config_info.cpp
==============================================================================
--- trunk/libs/config/test/config_info.cpp (original)
+++ trunk/libs/config/test/config_info.cpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -1000,6 +1000,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_FUNCTION_TEMPLATE_DEFAULT_ARGS);
PRINT_MACRO(BOOST_NO_FUNCTION_TEMPLATE_ORDERING);
PRINT_MACRO(BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS);
PRINT_MACRO(BOOST_NO_INCLASS_MEMBER_INITIALIZATION);
@@ -1031,6 +1032,7 @@
PRINT_MACRO(BOOST_NO_RVALUE_REFERENCES);
PRINT_MACRO(BOOST_NO_SCOPED_ENUMS);
PRINT_MACRO(BOOST_NO_SFINAE);
+ PRINT_MACRO(BOOST_NO_SFINAE_EXPR);
PRINT_MACRO(BOOST_NO_STATIC_ASSERT);
PRINT_MACRO(BOOST_NO_STDC_NAMESPACE);
PRINT_MACRO(BOOST_NO_STD_ALLOCATOR);
@@ -1073,6 +1075,8 @@
+
+
// END GENERATED BLOCK
PRINT_MACRO(BOOST_INTEL);
Modified: trunk/libs/config/test/config_test.cpp
==============================================================================
--- trunk/libs/config/test/config_test.cpp (original)
+++ trunk/libs/config/test/config_test.cpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -1,4 +1,4 @@
-// This file was automatically generated on Thu May 21 11:08:48 2009
+// This file was automatically generated on Sun Aug 02 08:26:00 2009
// by libs/config/tools/generate.cpp
// Copyright John Maddock 2002-4.
// Use, modification and distribution are subject to the
@@ -262,6 +262,11 @@
#else
namespace boost_no_extern_template = empty_boost;
#endif
+#ifndef BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
+#include "boost_no_function_template_default_args.ipp"
+#else
+namespace boost_no_function_template_default_args = empty_boost;
+#endif
#ifndef BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS
#include "boost_no_function_type_spec.ipp"
#else
@@ -427,6 +432,11 @@
#else
namespace boost_no_sfinae = empty_boost;
#endif
+#ifndef BOOST_NO_SFINAE_EXPR
+#include "boost_no_sfinae_expr.ipp"
+#else
+namespace boost_no_sfinae_expr = empty_boost;
+#endif
#ifndef BOOST_NO_STRINGSTREAM
#include "boost_no_sstream.ipp"
#else
@@ -1331,6 +1341,11 @@
std::cerr << "Failed test for BOOST_NO_EXTERN_TEMPLATE 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;
+ ++error_count;
+ }
if(0 != boost_no_function_type_specializations::test())
{
std::cerr << "Failed test for BOOST_NO_FUNCTION_TYPE_SPECIALIZATIONS at: " << __FILE__ << ":" << __LINE__ << std::endl;
@@ -1496,6 +1511,11 @@
std::cerr << "Failed test for BOOST_NO_SFINAE at: " << __FILE__ << ":" << __LINE__ << std::endl;
++error_count;
}
+ if(0 != boost_no_sfinae_expr::test())
+ {
+ std::cerr << "Failed test for BOOST_NO_SFINAE_EXPR at: " << __FILE__ << ":" << __LINE__ << std::endl;
+ ++error_count;
+ }
if(0 != boost_no_stringstream::test())
{
std::cerr << "Failed test for BOOST_NO_STRINGSTREAM at: " << __FILE__ << ":" << __LINE__ << std::endl;
Added: trunk/libs/config/test/no_function_template_default_args_fail.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/config/test/no_function_template_default_args_fail.cpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -0,0 +1,37 @@
+// This file was automatically generated on Sun Aug 02 08:25:59 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_FUNCTION_TEMPLATE_DEFAULT_ARGS
+// This file should not compile, if it does then
+// BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS should not be defined.
+// See file boost_no_function_template_default_args.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_FUNCTION_TEMPLATE_DEFAULT_ARGS
+#include "boost_no_function_template_default_args.ipp"
+#else
+#error "this file should not compile"
+#endif
+
+int main( int, char *[] )
+{
+ return boost_no_function_template_default_args::test();
+}
+
Added: trunk/libs/config/test/no_function_template_default_args_pass.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/config/test/no_function_template_default_args_pass.cpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -0,0 +1,37 @@
+// This file was automatically generated on Sun Aug 02 08:25:59 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_FUNCTION_TEMPLATE_DEFAULT_ARGS
+// This file should compile, if it does not then
+// BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS should be defined.
+// See file boost_no_function_template_default_args.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_FUNCTION_TEMPLATE_DEFAULT_ARGS
+#include "boost_no_function_template_default_args.ipp"
+#else
+namespace boost_no_function_template_default_args = empty_boost;
+#endif
+
+int main( int, char *[] )
+{
+ return boost_no_function_template_default_args::test();
+}
+
Added: trunk/libs/config/test/no_sfinae_expr_fail.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/config/test/no_sfinae_expr_fail.cpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -0,0 +1,37 @@
+// This file was automatically generated on Sun Aug 02 08:25:59 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_SFINAE_EXPR
+// This file should not compile, if it does then
+// BOOST_NO_SFINAE_EXPR should not be defined.
+// See file boost_no_sfinae_expr.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_SFINAE_EXPR
+#include "boost_no_sfinae_expr.ipp"
+#else
+#error "this file should not compile"
+#endif
+
+int main( int, char *[] )
+{
+ return boost_no_sfinae_expr::test();
+}
+
Added: trunk/libs/config/test/no_sfinae_expr_pass.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/config/test/no_sfinae_expr_pass.cpp 2009-08-02 10:00:59 EDT (Sun, 02 Aug 2009)
@@ -0,0 +1,37 @@
+// This file was automatically generated on Sun Aug 02 08:25:59 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_SFINAE_EXPR
+// This file should compile, if it does not then
+// BOOST_NO_SFINAE_EXPR should be defined.
+// See file boost_no_sfinae_expr.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_SFINAE_EXPR
+#include "boost_no_sfinae_expr.ipp"
+#else
+namespace boost_no_sfinae_expr = empty_boost;
+#endif
+
+int main( int, char *[] )
+{
+ return boost_no_sfinae_expr::test();
+}
+
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