From cbada3e2ce78c8d4280cef707c00869d87535627 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Sat, 13 Oct 2007 23:18:35 +0000 Subject: [PATCH] Merge with the offending files removed. [SVN r39995] --- include/boost/parameter/macros.hpp | 2 +- include/boost/parameter/name.hpp | 3 ++- include/boost/parameter/parameters.hpp | 4 ++-- include/boost/parameter/preprocessor.hpp | 4 ++-- test/preprocessor.cpp | 2 +- test/sfinae.cpp | 6 +++--- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/include/boost/parameter/macros.hpp b/include/boost/parameter/macros.hpp index 00b5ae9..b127121 100755 --- a/include/boost/parameter/macros.hpp +++ b/include/boost/parameter/macros.hpp @@ -21,7 +21,7 @@ #define BOOST_PARAMETER_FUN_TEMPLATE_HEAD0(n) -#ifndef BOOST_NO_SFINAE +#if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) # define BOOST_PARAMETER_MATCH_TYPE(n, param) \ BOOST_PP_EXPR_IF(n, typename) param::match \ diff --git a/include/boost/parameter/name.hpp b/include/boost/parameter/name.hpp index 8ba4819..8850f05 100755 --- a/include/boost/parameter/name.hpp +++ b/include/boost/parameter/name.hpp @@ -16,7 +16,8 @@ # include # if !defined(BOOST_NO_SFINAE) \ - && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) + && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) \ + && !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) # include # include diff --git a/include/boost/parameter/parameters.hpp b/include/boost/parameter/parameters.hpp index b7fd281..97e1024 100755 --- a/include/boost/parameter/parameters.hpp +++ b/include/boost/parameter/parameters.hpp @@ -725,7 +725,7 @@ struct parameters // ::type). -#ifndef BOOST_NO_SFINAE +#if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) // If NamedList satisfies the PS0, PS1, ..., this is a // metafunction returning parameters. Otherwise it // has no nested ::type. @@ -775,7 +775,7 @@ struct parameters #endif > struct match -# ifndef BOOST_NO_SFINAE +# if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) : match_base< typename aux::make_arg_list< typename BOOST_PARAMETER_build_arg_list( diff --git a/include/boost/parameter/preprocessor.hpp b/include/boost/parameter/preprocessor.hpp index 16c7505..609a9b3 100755 --- a/include/boost/parameter/preprocessor.hpp +++ b/include/boost/parameter/preprocessor.hpp @@ -38,7 +38,7 @@ namespace boost { namespace parameter { namespace aux { -# ifndef BOOST_NO_SFINAE +# if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) // Given Match, which is "void x" where x is an argument matching // criterion, extract a corresponding MPL predicate. @@ -353,7 +353,7 @@ struct funptr_predicate template /**/ -# ifndef BOOST_NO_SFINAE +# if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) # define BOOST_PARAMETER_FUNCTION_FWD_MATCH_Z(z, name, parameters, n) \ , typename boost::parameter::aux::match< \ parameters, BOOST_PP_ENUM_PARAMS(n, ParameterArgumentType) \ diff --git a/test/preprocessor.cpp b/test/preprocessor.cpp index ae44e4f..792a1b7 100755 --- a/test/preprocessor.cpp +++ b/test/preprocessor.cpp @@ -453,7 +453,7 @@ int main() , name = S("foo") ); -#ifndef BOOST_NO_SFINAE +#if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) assert(sfinae("foo") == 1); assert(sfinae(1) == 0); diff --git a/test/sfinae.cpp b/test/sfinae.cpp index c86d336..f017a21 100755 --- a/test/sfinae.cpp +++ b/test/sfinae.cpp @@ -9,7 +9,7 @@ #include #include -#ifndef BOOST_NO_SFINAE +#if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) # include # include #endif @@ -70,7 +70,7 @@ namespace test f_impl(args(a0, a1)); } -#ifndef BOOST_NO_SFINAE +#if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) // On compilers that actually support SFINAE, add another overload // that is an equally good match and can only be in the overload set // when the others are not. This tests that the SFINAE is actually @@ -96,7 +96,7 @@ int main() f("foo", 3.f); f(value = 3.f, name = "foo"); -#ifndef BOOST_NO_SFINAE +#if ! defined(BOOST_NO_SFINAE) && ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x592)) BOOST_TEST(f(3, 4) == 0); #endif return boost::report_errors();