From a46bd7ab72e84e5a04720eee856d1827d3ce9f82 Mon Sep 17 00:00:00 2001 From: Joel de Guzman Date: Sat, 19 May 2012 01:18:43 +0000 Subject: [PATCH] patch for ticket #6910 by michel [SVN r78507] --- include/boost/fusion/functional/adapter/unfused.hpp | 12 ++++++++++++ .../fusion/functional/adapter/unfused_typed.hpp | 12 ++++++++++++ 2 files changed, 24 insertions(+) mode change 100755 => 100644 include/boost/fusion/functional/adapter/unfused.hpp diff --git a/include/boost/fusion/functional/adapter/unfused.hpp b/include/boost/fusion/functional/adapter/unfused.hpp old mode 100755 new mode 100644 index b0d02bc4..facd5c54 --- a/include/boost/fusion/functional/adapter/unfused.hpp +++ b/include/boost/fusion/functional/adapter/unfused.hpp @@ -100,6 +100,7 @@ namespace boost { namespace fusion namespace boost { +#if !defined(BOOST_RESULT_OF_USE_DECLTYPE) || defined(BOOST_NO_DECLTYPE) template struct result_of< boost::fusion::unfused const () > { @@ -110,6 +111,17 @@ namespace boost { typedef typename boost::fusion::unfused::call_0_result type; }; +#endif + template + struct tr1_result_of< boost::fusion::unfused const () > + { + typedef typename boost::fusion::unfused::call_const_0_result type; + }; + template + struct tr1_result_of< boost::fusion::unfused() > + { + typedef typename boost::fusion::unfused::call_0_result type; + }; } #define BOOST_FUSION_FUNCTIONAL_ADAPTER_UNFUSED_HPP_INCLUDED diff --git a/include/boost/fusion/functional/adapter/unfused_typed.hpp b/include/boost/fusion/functional/adapter/unfused_typed.hpp index 0f19f28f..923c6876 100644 --- a/include/boost/fusion/functional/adapter/unfused_typed.hpp +++ b/include/boost/fusion/functional/adapter/unfused_typed.hpp @@ -80,6 +80,7 @@ namespace boost { namespace fusion namespace boost { +#if !defined(BOOST_RESULT_OF_USE_DECLTYPE) || defined(BOOST_NO_DECLTYPE) template struct result_of< boost::fusion::unfused_typed const () > : boost::fusion::unfused_typed::template result< @@ -90,6 +91,17 @@ namespace boost : boost::fusion::unfused_typed::template result< boost::fusion::unfused_typed () > { }; +#endif + template + struct tr1_result_of< boost::fusion::unfused_typed const () > + : boost::fusion::unfused_typed::template result< + boost::fusion::unfused_typed const () > + { }; + template + struct tr1_result_of< boost::fusion::unfused_typed() > + : boost::fusion::unfused_typed::template result< + boost::fusion::unfused_typed () > + { }; }