Boost logo

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