Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r49042 - in branches/bcbboost/boost/mpl: . aux_ aux_/config
From: nicola.musatti_at_[hidden]
Date: 2008-09-29 17:17:32


Author: nmusatti
Date: 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
New Revision: 49042
URL: http://svn.boost.org/trac/boost/changeset/49042

Log:
CodeGear patch
Text files modified:
   branches/bcbboost/boost/mpl/apply_wrap.hpp | 27 +++++++++++++++++++++++++++
   branches/bcbboost/boost/mpl/assert.hpp | 6 +++---
   branches/bcbboost/boost/mpl/aux_/config/adl.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/arrays.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/bind.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/compiler.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/dtp.hpp | 4 ++--
   branches/bcbboost/boost/mpl/aux_/config/forwarding.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/integral.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/operators.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/preprocessor.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/config/ttp.hpp | 2 +-
   branches/bcbboost/boost/mpl/aux_/has_rebind.hpp | 4 ++--
   branches/bcbboost/boost/mpl/aux_/lambda_support.hpp | 2 +-
   branches/bcbboost/boost/mpl/lower_bound.hpp | 2 +-
   branches/bcbboost/boost/mpl/quote.hpp | 15 ++++++++++++---
   branches/bcbboost/boost/mpl/upper_bound.hpp | 2 +-
   17 files changed, 58 insertions(+), 22 deletions(-)

Modified: branches/bcbboost/boost/mpl/apply_wrap.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/apply_wrap.hpp (original)
+++ branches/bcbboost/boost/mpl/apply_wrap.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -177,6 +177,31 @@
 
 # define j_ BOOST_PP_FRAME_ITERATION(2)
 
+#if (i_ == 0) && (j_ == 0) && BOOST_WORKAROUND( __BORLANDC__, >= 0x590) && !defined( BOOST_MPL_CFG_NO_HAS_APPLY)
+
+template< typename F, bool F_has_apply >
+struct apply_wrap_impl0_bcb {
+ typedef typename F::template apply< na > type;
+};
+
+template< typename F >
+struct apply_wrap_impl0_bcb< F, true > {
+ typedef typename F::apply type;
+};
+
+template<
+ typename F BOOST_PP_COMMA_IF(i_) AUX778076_APPLY_WRAP_PARAMS(i_, typename T)
+ >
+struct BOOST_PP_CAT(apply_wrap_impl,i_)<
+ BOOST_MPL_PP_ADD(i_, j_)
+ , F
+ BOOST_PP_COMMA_IF(i_) AUX778076_APPLY_WRAP_PARAMS(i_, T)
+ >
+{
+ typedef apply_wrap_impl0_bcb< F, aux::has_apply< F >::value >::type type;
+};
+#else
+
 template<
       typename F BOOST_PP_COMMA_IF(i_) AUX778076_APPLY_WRAP_PARAMS(i_, typename T)
>
@@ -198,6 +223,8 @@
> type;
 };
 
+#endif
+
 # undef j_
 
 #endif // BOOST_PP_ITERATION_DEPTH()

Modified: branches/bcbboost/boost/mpl/assert.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/assert.hpp (original)
+++ branches/bcbboost/boost/mpl/assert.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -35,7 +35,7 @@
 #include <cstddef>
 
 
-#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
     || (BOOST_MPL_CFG_GCC != 0) \
     || BOOST_WORKAROUND(__IBMCPP__, <= 600)
 # define BOOST_MPL_CFG_ASSERT_USE_RELATION_NAMES
@@ -43,7 +43,7 @@
 
 #if BOOST_WORKAROUND(__MWERKS__, < 0x3202) \
     || BOOST_WORKAROUND(__EDG_VERSION__, <= 238) \
- || BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
     || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840))
 # define BOOST_MPL_CFG_ASSERT_BROKEN_POINTER_TO_POINTER_TO_MEMBER
 #endif
@@ -51,7 +51,7 @@
 // agurt, 10/nov/06: use enums for Borland (which cannot cope with static constants)
 // and GCC (which issues "unused variable" warnings when static constants are used
 // at a function scope)
-#if BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
     || (BOOST_MPL_CFG_GCC != 0)
 # define BOOST_MPL_AUX_ASSERT_CONSTANT(T, expr) enum { expr }
 #else

Modified: branches/bcbboost/boost/mpl/aux_/config/adl.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/adl.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/adl.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -27,7 +27,7 @@
 
 #if !defined(BOOST_MPL_CFG_NO_ADL_BARRIER_NAMESPACE) \
     && ( BOOST_WORKAROUND(BOOST_MSVC, BOOST_TESTED_AT(1400)) \
- || BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
         || BOOST_WORKAROUND(__DMC__, BOOST_TESTED_AT(0x840)) \
         || BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3202)) \
         || BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, BOOST_TESTED_AT(810)) \

Modified: branches/bcbboost/boost/mpl/aux_/config/arrays.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/arrays.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/arrays.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -19,7 +19,7 @@
 
 #if !defined(BOOST_MPL_CFG_NO_DEPENDENT_ARRAY_TYPES) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
- && ( BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+ && ( BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
         || BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
         )
 

Modified: branches/bcbboost/boost/mpl/aux_/config/bind.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/bind.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/bind.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -21,7 +21,7 @@
 #if !defined(BOOST_MPL_CFG_NO_BIND_TEMPLATE) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
     && ( BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
- || BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
         )
 
 # define BOOST_MPL_CFG_NO_BIND_TEMPLATE

Modified: branches/bcbboost/boost/mpl/aux_/config/compiler.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/compiler.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/compiler.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -32,7 +32,7 @@
 # elif BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0304))
 # define BOOST_MPL_CFG_COMPILER_DIR gcc
 
-# elif BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+# elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 # if !defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES)
 # define BOOST_MPL_CFG_COMPILER_DIR bcc551
 # else

Modified: branches/bcbboost/boost/mpl/aux_/config/dtp.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/dtp.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/dtp.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -25,7 +25,7 @@
 #if !defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
     && BOOST_WORKAROUND(__BORLANDC__, >= 0x560) \
- && BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+ && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 
 # define BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES
 
@@ -35,7 +35,7 @@
 #if !defined(BOOST_MPL_CFG_BROKEN_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
     && ( BOOST_WORKAROUND(__MWERKS__, <= 0x3001) \
- || BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
         || defined(BOOST_MPL_CFG_NO_DEFAULT_PARAMETERS_IN_NESTED_TEMPLATES) \
         )
         

Modified: branches/bcbboost/boost/mpl/aux_/config/forwarding.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/forwarding.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/forwarding.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -18,7 +18,7 @@
 
 #if !defined(BOOST_MPL_CFG_NO_NESTED_FORWARDING) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
- && BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+ && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 
 # define BOOST_MPL_CFG_NO_NESTED_FORWARDING
 

Modified: branches/bcbboost/boost/mpl/aux_/config/integral.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/integral.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/integral.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -19,7 +19,7 @@
 
 #if !defined(BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
- && BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+ && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 
 # define BOOST_MPL_CFG_BCC_INTEGRAL_CONSTANTS
 

Modified: branches/bcbboost/boost/mpl/aux_/config/operators.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/operators.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/operators.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -20,7 +20,7 @@
 
 #if !defined(BOOST_MPL_CFG_USE_OPERATORS_OVERLOADING) \
     && ( BOOST_WORKAROUND(BOOST_MSVC, <= 1300) \
- || BOOST_WORKAROUND(__BORLANDC__, <= 0x600) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
         || BOOST_WORKAROUND(__EDG_VERSION__, <= 245) \
         || BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, <= 0x0295) \
         || BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(600)) \

Modified: branches/bcbboost/boost/mpl/aux_/config/preprocessor.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/preprocessor.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/preprocessor.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -18,7 +18,7 @@
 
 #if !defined(BOOST_MPL_CFG_BROKEN_PP_MACRO_EXPANSION) \
     && ( BOOST_WORKAROUND(__MWERKS__, <= 0x3003) \
- || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x561)) \
+ || BOOST_WORKAROUND(__BORLANDC__, < 0x582) \
         || BOOST_WORKAROUND(__IBMCPP__, BOOST_TESTED_AT(502)) \
         )
 

Modified: branches/bcbboost/boost/mpl/aux_/config/ttp.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/config/ttp.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/config/ttp.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -31,7 +31,7 @@
 #if !defined(BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING) \
     && !defined(BOOST_MPL_PREPROCESSING_MODE) \
     && ( BOOST_WORKAROUND(BOOST_MPL_CFG_GCC, BOOST_TESTED_AT(0x0302)) \
- || BOOST_WORKAROUND(__BORLANDC__, < 0x600) \
+ || BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
         )
 
 # define BOOST_MPL_CFG_EXTENDED_TEMPLATE_PARAMETERS_MATCHING

Modified: branches/bcbboost/boost/mpl/aux_/has_rebind.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/has_rebind.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/has_rebind.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -25,7 +25,7 @@
 # include <boost/mpl/if.hpp>
 # include <boost/mpl/bool.hpp>
 # include <boost/mpl/aux_/msvc_is_class.hpp>
-#elif BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+#elif BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 # include <boost/mpl/if.hpp>
 # include <boost/mpl/bool.hpp>
 # include <boost/mpl/aux_/yes_no.hpp>
@@ -62,7 +62,7 @@
 template< typename T > struct has_rebind_tag {};
 no_tag operator|(has_rebind_tag<int>, void const volatile*);
 
-# if !BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+# if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 template< typename T >
 struct has_rebind
 {

Modified: branches/bcbboost/boost/mpl/aux_/lambda_support.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/aux_/lambda_support.hpp (original)
+++ branches/bcbboost/boost/mpl/aux_/lambda_support.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -110,7 +110,7 @@
     typedef BOOST_PP_CAT(name,_rebind) rebind; \
 /**/
 
-#if BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 # define BOOST_MPL_AUX_LAMBDA_SUPPORT_HAS_REBIND(i, name, params) \
 template< BOOST_MPL_PP_PARAMS(i,typename T) > \
 ::boost::mpl::aux::yes_tag operator|( \

Modified: branches/bcbboost/boost/mpl/lower_bound.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/lower_bound.hpp (original)
+++ branches/bcbboost/boost/mpl/lower_bound.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -19,7 +19,7 @@
 #include <boost/mpl/aux_/na_spec.hpp>
 #include <boost/mpl/aux_/config/workaround.hpp>
 
-#if BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 # define BOOST_MPL_CFG_STRIPPED_DOWN_LOWER_BOUND_IMPL
 #endif
 

Modified: branches/bcbboost/boost/mpl/quote.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/quote.hpp (original)
+++ branches/bcbboost/boost/mpl/quote.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -25,7 +25,7 @@
 
 #include <boost/mpl/aux_/config/ttp.hpp>
 
-#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS)
+#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) && !BOOST_WORKAROUND( __BORLANDC__, >=0x590 )
 # define BOOST_MPL_CFG_NO_QUOTE_TEMPLATE
 #endif
 
@@ -123,17 +123,26 @@
 struct BOOST_PP_CAT(quote,i_)
 {
     template< BOOST_MPL_PP_PARAMS(i_, typename U) > struct apply
-#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
+#if BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT( 0x590 ))
+ {
+ typedef typename quote_impl<
+ F< BOOST_MPL_PP_PARAMS(i_, U) >
+ , aux::has_type< F< BOOST_MPL_PP_PARAMS(i_, U) > >::value
+ >::type type;
+ };
+#elif !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
         : quote_impl<
               F< BOOST_MPL_PP_PARAMS(i_, U) >
             , aux::has_type< F< BOOST_MPL_PP_PARAMS(i_, U) > >::value
>
+ {
+ };
 #else
         : quote_impl< aux::has_type< F< BOOST_MPL_PP_PARAMS(i_, U) > >::value >
             ::template result_< F< BOOST_MPL_PP_PARAMS(i_, U) > >
-#endif
     {
     };
+#endif
 };
 
 #undef i_

Modified: branches/bcbboost/boost/mpl/upper_bound.hpp
==============================================================================
--- branches/bcbboost/boost/mpl/upper_bound.hpp (original)
+++ branches/bcbboost/boost/mpl/upper_bound.hpp 2008-09-29 17:17:31 EDT (Mon, 29 Sep 2008)
@@ -19,7 +19,7 @@
 #include <boost/mpl/aux_/na_spec.hpp>
 #include <boost/mpl/aux_/config/workaround.hpp>
 
-#if BOOST_WORKAROUND(__BORLANDC__, < 0x600)
+#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610))
 # define BOOST_MPL_CFG_STRIPPED_DOWN_UPPER_BOUND_IMPL
 #endif
 


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