diff options
author | Tobias Markmann <tm@ayena.de> | 2014-10-19 20:22:58 (GMT) |
---|---|---|
committer | Tobias Markmann <tm@ayena.de> | 2014-10-20 13:49:33 (GMT) |
commit | 6b22dfcf59474dd016a0355a3102a1dd3692d92c (patch) | |
tree | 2b1fd33be433a91e81fee84fdc2bf1b52575d934 /3rdParty/Boost/src/boost/phoenix/function | |
parent | 38b0cb785fea8eae5e48fae56440695fdfd10ee1 (diff) | |
download | swift-6b22dfcf59474dd016a0355a3102a1dd3692d92c.zip swift-6b22dfcf59474dd016a0355a3102a1dd3692d92c.tar.bz2 |
Update Boost in 3rdParty to version 1.56.0.
This updates Boost in our 3rdParty directory to version 1.56.0.
Updated our update.sh script to stop on error.
Changed error reporting in SwiftTools/CrashReporter.cpp to SWIFT_LOG due to
missing include of <iostream> with newer Boost.
Change-Id: I4b35c77de951333979a524097f35f5f83d325edc
Diffstat (limited to '3rdParty/Boost/src/boost/phoenix/function')
3 files changed, 23 insertions, 8 deletions
diff --git a/3rdParty/Boost/src/boost/phoenix/function/adapt_callable.hpp b/3rdParty/Boost/src/boost/phoenix/function/adapt_callable.hpp index 8cd8361..ac2f3ae 100644 --- a/3rdParty/Boost/src/boost/phoenix/function/adapt_callable.hpp +++ b/3rdParty/Boost/src/boost/phoenix/function/adapt_callable.hpp @@ -10,28 +10,30 @@ #include <boost/phoenix/core/limits.hpp> #include <boost/phoenix/core/detail/function_eval.hpp> #include <boost/preprocessor/repetition/repeat.hpp> #define BOOST_PHOENIX_ADAPT_CALLABLE_NULLARY(NAME, FUNC) \ + inline \ boost::phoenix::detail::expression::function_eval<FUNC>::type const \ - inline NAME() \ + NAME() \ { \ return boost::phoenix::detail::expression:: \ function_eval<FUNC>::make(FUNC()); \ } \ /**/ #define BOOST_PHOENIX_ADAPT_CALLABLE(NAME, FUNC, N) \ template <BOOST_PHOENIX_typename_A(N)> \ + inline \ typename \ boost::phoenix::detail::expression::function_eval< \ FUNC \ , BOOST_PHOENIX_A(N)>::type const \ - inline NAME(BOOST_PHOENIX_A_const_ref_a(N)) \ + NAME(BOOST_PHOENIX_A_const_ref_a(N)) \ { \ return boost::phoenix::detail::expression:: \ function_eval<FUNC, BOOST_PHOENIX_A(N)>:: \ make(FUNC(), BOOST_PHOENIX_a(N)); \ } \ /**/ diff --git a/3rdParty/Boost/src/boost/phoenix/function/adapt_function.hpp b/3rdParty/Boost/src/boost/phoenix/function/adapt_function.hpp index 69e1136..6ba20be 100644 --- a/3rdParty/Boost/src/boost/phoenix/function/adapt_function.hpp +++ b/3rdParty/Boost/src/boost/phoenix/function/adapt_function.hpp @@ -24,16 +24,17 @@ { \ return FUNC(); \ } \ }; \ } \ \ + inline \ boost::phoenix::detail::expression::function_eval< \ detail:: BOOST_PP_CAT(NAME, _impl_nullary) \ >::type const \ - inline NAME() \ + NAME() \ { \ return boost::phoenix::detail::expression:: \ function_eval<detail:: BOOST_PP_CAT(NAME, _impl_nullary)> \ ::make(detail:: BOOST_PP_CAT(NAME, _impl_nullary)()); \ } \ /**/ @@ -45,29 +46,30 @@ { \ template <typename Sig> \ struct result; \ \ template <typename This, BOOST_PHOENIX_typename_A(N)> \ struct result<This(BOOST_PHOENIX_A(N))> \ - {typedef RESULT type;}; \ + {typedef RESULT type;}; \ \ template <BOOST_PHOENIX_typename_A(N)> \ RESULT \ operator()(BOOST_PHOENIX_A_ref_a(N)) const \ { \ return FUNC(BOOST_PHOENIX_a(N)); \ } \ }; \ } \ \ template <BOOST_PHOENIX_typename_A(N)> \ + inline \ typename \ boost::phoenix::detail::expression::function_eval< \ detail:: BOOST_PP_CAT(BOOST_PP_CAT(NAME, _impl_), N) \ , BOOST_PHOENIX_A(N)>::type const \ - inline NAME(BOOST_PHOENIX_A_const_ref_a(N)) \ + NAME(BOOST_PHOENIX_A_const_ref_a(N)) \ { \ return boost::phoenix::detail::expression:: \ function_eval< \ detail:: BOOST_PP_CAT(BOOST_PP_CAT(NAME, _impl_), N) \ , BOOST_PHOENIX_A(N) \ >::make( \ diff --git a/3rdParty/Boost/src/boost/phoenix/function/function.hpp b/3rdParty/Boost/src/boost/phoenix/function/function.hpp index 10bdab7..4817100 100644 --- a/3rdParty/Boost/src/boost/phoenix/function/function.hpp +++ b/3rdParty/Boost/src/boost/phoenix/function/function.hpp @@ -5,32 +5,43 @@ Distributed under 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) ==============================================================================*/ #ifndef BOOST_PHOENIX_FUNCTION_FUNCTION_HPP #define BOOST_PHOENIX_FUNCTION_FUNCTION_HPP +#include <boost/config.hpp> //#include <boost/phoenix/function/function_handling.hpp> #include <boost/phoenix/core/detail/function_eval.hpp> #include <boost/preprocessor/facilities/expand.hpp> #include <boost/preprocessor/logical/or.hpp> #include <boost/utility/result_of.hpp> namespace boost { namespace phoenix { ///////////////////////////////////////////////////////////////////////////// // Functions ///////////////////////////////////////////////////////////////////////////// + + namespace expression + { + template <typename F, BOOST_PHOENIX_typename_A_void(BOOST_PHOENIX_ACTOR_LIMIT)> + struct function + : detail::expression::function_eval<F, BOOST_PHOENIX_A(BOOST_PHOENIX_ACTOR_LIMIT)> + {}; + } // functor which returns our lazy function call extension template<typename F> struct function { - function() {} + BOOST_CONSTEXPR function() + : f() + {} - function(F f) - : f(f) + BOOST_CONSTEXPR function(F f_) + : f(f_) {} template <typename Sig> struct result; typename detail::expression::function_eval<F>::type const |