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/fusion/support | |
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/fusion/support')
16 files changed, 59 insertions, 9 deletions
diff --git a/3rdParty/Boost/src/boost/fusion/support/as_const.hpp b/3rdParty/Boost/src/boost/fusion/support/as_const.hpp index bb2a96a..ed53597 100644 --- a/3rdParty/Boost/src/boost/fusion/support/as_const.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/as_const.hpp @@ -16,6 +16,7 @@ namespace boost { namespace fusion { namespace extension // such contexts with calls to this function. Users can // specialize this function for their own wrappers. template <typename T> + BOOST_FUSION_GPU_ENABLED const T& as_const(const T& obj) { return obj; diff --git a/3rdParty/Boost/src/boost/fusion/support/category_of.hpp b/3rdParty/Boost/src/boost/fusion/support/category_of.hpp index 805d895..6bdf6d0 100644 --- a/3rdParty/Boost/src/boost/fusion/support/category_of.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/category_of.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_CATEGORY_OF_07202005_0308) #define FUSION_CATEGORY_OF_07202005_0308 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/support/detail/category_of.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/type_traits/is_base_of.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/support/config.hpp b/3rdParty/Boost/src/boost/fusion/support/config.hpp new file mode 100644 index 0000000..16e38f9 --- /dev/null +++ b/3rdParty/Boost/src/boost/fusion/support/config.hpp @@ -0,0 +1,16 @@ +/*============================================================================= + Copyright (c) 2014 Eric Niebler + + 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) +==============================================================================*/ +#if !defined(FUSION_SUPPORT_CONFIG_01092014_1718) +#define FUSION_SUPPORT_CONFIG_01092014_1718 + +#include <boost/config.hpp> + +#ifndef BOOST_FUSION_GPU_ENABLED +#define BOOST_FUSION_GPU_ENABLED BOOST_GPU_ENABLED +#endif + +#endif diff --git a/3rdParty/Boost/src/boost/fusion/support/detail/access.hpp b/3rdParty/Boost/src/boost/fusion/support/detail/access.hpp index ced7cea..ab88538 100644 --- a/3rdParty/Boost/src/boost/fusion/support/detail/access.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/detail/access.hpp @@ -1,12 +1,13 @@ /*============================================================================= Copyright (c) 2001-2011 Joel de Guzman - Distributed under the Boost Software License, Version 1.0. (See accompanying + 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) ==============================================================================*/ #if !defined(FUSION_ACCESS_04182005_0737) #define FUSION_ACCESS_04182005_0737 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/add_const.hpp> #include <boost/type_traits/add_reference.hpp> @@ -21,10 +22,10 @@ namespace boost { namespace fusion { namespace detail template <typename T> struct cref_result { - typedef typename + typedef typename add_reference< typename add_const<T>::type - >::type + >::type type; }; @@ -35,7 +36,7 @@ namespace boost { namespace fusion { namespace detail }; template <typename T> - struct call_param<T &> + struct call_param<T&> { typedef T& type; }; diff --git a/3rdParty/Boost/src/boost/fusion/support/detail/as_fusion_element.hpp b/3rdParty/Boost/src/boost/fusion/support/detail/as_fusion_element.hpp index 96cf2d0..628dca4 100644 --- a/3rdParty/Boost/src/boost/fusion/support/detail/as_fusion_element.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/detail/as_fusion_element.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_AS_FUSION_ELEMENT_05052005_0338) #define FUSION_AS_FUSION_ELEMENT_05052005_0338 +#include <boost/fusion/support/config.hpp> #include <boost/ref.hpp> namespace boost { namespace fusion { namespace detail diff --git a/3rdParty/Boost/src/boost/fusion/support/detail/is_mpl_sequence.hpp b/3rdParty/Boost/src/boost/fusion/support/detail/is_mpl_sequence.hpp index 376afc2..1c485f9 100644 --- a/3rdParty/Boost/src/boost/fusion/support/detail/is_mpl_sequence.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/detail/is_mpl_sequence.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_DETAIL_IS_MPL_SEQUENCE_29122006_1105) #define FUSION_DETAIL_IS_MPL_SEQUENCE_29122006_1105 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/support/sequence_base.hpp> #include <boost/mpl/is_sequence.hpp> #include <boost/mpl/and.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/support/detail/pp_round.hpp b/3rdParty/Boost/src/boost/fusion/support/detail/pp_round.hpp index e1a6161..6c43b66 100644 --- a/3rdParty/Boost/src/boost/fusion/support/detail/pp_round.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/detail/pp_round.hpp @@ -8,6 +8,7 @@ #ifndef BOOST_BOOST_FUSION_SUPPORT_PP_ROUND_HPP #define BOOST_BOOST_FUSION_SUPPORT_PP_ROUND_HPP +#include <boost/fusion/support/config.hpp> #include <boost/preprocessor/cat.hpp> #include <boost/preprocessor/comparison/less.hpp> #include <boost/preprocessor/control/if.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/support/detail/segmented_fold_until_impl.hpp b/3rdParty/Boost/src/boost/fusion/support/detail/segmented_fold_until_impl.hpp index 08096c1..514e8d9 100644 --- a/3rdParty/Boost/src/boost/fusion/support/detail/segmented_fold_until_impl.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/detail/segmented_fold_until_impl.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_FOLD_UNTIL_IMPL_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_FOLD_UNTIL_IMPL_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/mpl/eval_if.hpp> #include <boost/mpl/identity.hpp> @@ -65,6 +66,7 @@ namespace boost { namespace fusion } template <typename Cur, typename Context> + BOOST_FUSION_GPU_ENABLED typename result_of::make_segmented_iterator<Cur, Context>::type make_segmented_iterator(Cur const& cur, Context const& context) { @@ -119,6 +121,7 @@ namespace boost { namespace fusion typedef iterator_range<Cur, End> range_type; typedef cons<range_type, Context> type; + BOOST_FUSION_GPU_ENABLED static type call(Cur const& cur, End const& end, Context const& context) { return cons<range_type, Context>(range_type(cur, end), context); @@ -167,6 +170,7 @@ namespace boost { namespace fusion typedef typename impl::type type; typedef typename impl::continue_type continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, State const& state, Context const& context, Fun const& fun) { return impl::call(fusion::segments(seq), state, context, fun); @@ -188,6 +192,7 @@ namespace boost { namespace fusion typedef typename apply_type::type type; typedef typename apply_type::continue_type continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, State const& state, Context const& context, Fun const& fun) { return apply_type::call(seq, state, context, fun); @@ -269,12 +274,14 @@ namespace boost { namespace fusion >::type continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Begin const& beg, End const& end, State const& state , Context const& context, Fun const& fun) { return call(beg, end, state, context, fun, typename fold_recurse_impl::continue_type()); } + BOOST_FUSION_GPU_ENABLED static type call(Begin const& beg, End const& end, State const& state , Context const& context, Fun const& fun, mpl::true_) // continue { @@ -290,6 +297,7 @@ namespace boost { namespace fusion , fun); } + BOOST_FUSION_GPU_ENABLED static type call(Begin const& beg, End const& end, State const& state , Context const& context, Fun const& fun, mpl::false_) // break { @@ -317,6 +325,7 @@ namespace boost { namespace fusion typedef typename impl::type type; typedef typename impl::continue_type continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Begin const& beg, End const& end, State const& state , Context const& context, Fun const& fun) { @@ -342,6 +351,7 @@ namespace boost { namespace fusion typedef typename impl::type type; typedef typename impl::continue_type continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Begin const& beg, End const& end, State const& state , Context const& context, Fun const& fun) { @@ -355,6 +365,7 @@ namespace boost { namespace fusion typedef State type; typedef mpl::true_ continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Begin const&, End const&, State const& state , Context const&, Fun const&) { @@ -378,6 +389,7 @@ namespace boost { namespace fusion typedef typename impl::type type; typedef typename impl::continue_type continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Segments& segs, State const& state, Context const& context, Fun const& fun) { return impl::call(fusion::begin(segs), fusion::end(segs), state, context, fun); diff --git a/3rdParty/Boost/src/boost/fusion/support/is_iterator.hpp b/3rdParty/Boost/src/boost/fusion/support/is_iterator.hpp index f0272d0..b48aab8 100644 --- a/3rdParty/Boost/src/boost/fusion/support/is_iterator.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/is_iterator.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_IS_ITERATOR_05062005_1219) #define FUSION_IS_ITERATOR_05062005_1219 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_base_of.hpp> namespace boost { namespace fusion diff --git a/3rdParty/Boost/src/boost/fusion/support/is_segmented.hpp b/3rdParty/Boost/src/boost/fusion/support/is_segmented.hpp index 6e62eac..1326feb 100644 --- a/3rdParty/Boost/src/boost/fusion/support/is_segmented.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/is_segmented.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_IS_SEGMENTED_03202006_0015) #define FUSION_IS_SEGMENTED_03202006_0015 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/support/tag_of.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/support/is_sequence.hpp b/3rdParty/Boost/src/boost/fusion/support/is_sequence.hpp index 184bbbb..8b58210 100644 --- a/3rdParty/Boost/src/boost/fusion/support/is_sequence.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/is_sequence.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_IS_SEQUENCE_05052005_1002) #define FUSION_IS_SEQUENCE_05052005_1002 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/support/sequence_base.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/mpl/is_sequence.hpp> @@ -61,7 +62,7 @@ namespace boost { namespace fusion struct is_sequence : mpl::bool_< (bool)extension::is_sequence_impl< - typename fusion::detail::tag_of<T>::type + typename fusion::detail::tag_of<T>::type >::template apply<T>::type::value > {}; diff --git a/3rdParty/Boost/src/boost/fusion/support/is_view.hpp b/3rdParty/Boost/src/boost/fusion/support/is_view.hpp index 4ec9e06..c54e60e 100644 --- a/3rdParty/Boost/src/boost/fusion/support/is_view.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/is_view.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_IS_VIEW_03202006_0015) #define FUSION_IS_VIEW_03202006_0015 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/support/detail/is_view.hpp> #include <boost/fusion/support/tag_of.hpp> diff --git a/3rdParty/Boost/src/boost/fusion/support/iterator_base.hpp b/3rdParty/Boost/src/boost/fusion/support/iterator_base.hpp index ad24d93..d23d05c 100644 --- a/3rdParty/Boost/src/boost/fusion/support/iterator_base.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/iterator_base.hpp @@ -7,6 +7,8 @@ #if !defined(FUSION_ITERATOR_BASE_05042005_1008) #define FUSION_ITERATOR_BASE_05042005_1008 +#include <boost/fusion/support/config.hpp> + namespace boost { namespace fusion { struct iterator_root {}; @@ -14,12 +16,14 @@ namespace boost { namespace fusion template <typename Iterator> struct iterator_base : iterator_root { + BOOST_FUSION_GPU_ENABLED Iterator const& cast() const { return static_cast<Iterator const&>(*this); } + BOOST_FUSION_GPU_ENABLED Iterator& cast() { diff --git a/3rdParty/Boost/src/boost/fusion/support/segmented_fold_until.hpp b/3rdParty/Boost/src/boost/fusion/support/segmented_fold_until.hpp index 6ea58ac..8d3ea68 100644 --- a/3rdParty/Boost/src/boost/fusion/support/segmented_fold_until.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/segmented_fold_until.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_FOLD_UNTIL_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_FOLD_UNTIL_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/utility/enable_if.hpp> #include <boost/fusion/support/detail/segmented_fold_until_impl.hpp> @@ -20,7 +21,7 @@ namespace boost { namespace fusion { //auto segmented_fold_until(seq, state, fun) //{ - // return first(segmented_fold_until_impl(seq, state, nil, fun)); + // return first(segmented_fold_until_impl(seq, state, nil_, fun)); //} namespace result_of @@ -32,7 +33,7 @@ namespace boost { namespace fusion detail::segmented_fold_until_impl< Sequence , State - , fusion::nil + , fusion::nil_ , Fun > filter; @@ -44,6 +45,7 @@ namespace boost { namespace fusion } template <typename Sequence, typename State, typename Fun> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> @@ -55,10 +57,11 @@ namespace boost { namespace fusion typename result_of::segmented_fold_until<Sequence, State, Fun>::filter filter; - return filter::call(seq, state, fusion::nil(), fun); + return filter::call(seq, state, fusion::nil_(), fun); } template <typename Sequence, typename State, typename Fun> + BOOST_FUSION_GPU_ENABLED typename result_of::segmented_fold_until<Sequence const, State, Fun>::type segmented_fold_until(Sequence const& seq, State const& state, Fun const& fun) { @@ -66,7 +69,7 @@ namespace boost { namespace fusion typename result_of::segmented_fold_until<Sequence const, State, Fun>::filter filter; - return filter::call(seq, state, fusion::nil(), fun); + return filter::call(seq, state, fusion::nil_(), fun); } }} diff --git a/3rdParty/Boost/src/boost/fusion/support/sequence_base.hpp b/3rdParty/Boost/src/boost/fusion/support/sequence_base.hpp index 89affab..b59121c 100644 --- a/3rdParty/Boost/src/boost/fusion/support/sequence_base.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/sequence_base.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_SEQUENCE_BASE_04182005_0737) #define FUSION_SEQUENCE_BASE_04182005_0737 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/begin_end_fwd.hpp> namespace boost { namespace fusion @@ -21,18 +22,21 @@ namespace boost { namespace fusion template <typename Sequence> struct sequence_base { + BOOST_FUSION_GPU_ENABLED Sequence const& derived() const { return static_cast<Sequence const&>(*this); } + BOOST_FUSION_GPU_ENABLED Sequence& derived() { return static_cast<Sequence&>(*this); } + BOOST_FUSION_GPU_ENABLED operator detail::from_sequence_convertible_type()const { return detail::from_sequence_convertible_type(); diff --git a/3rdParty/Boost/src/boost/fusion/support/tag_of.hpp b/3rdParty/Boost/src/boost/fusion/support/tag_of.hpp index a3fef3b..61cb3b1 100644 --- a/3rdParty/Boost/src/boost/fusion/support/tag_of.hpp +++ b/3rdParty/Boost/src/boost/fusion/support/tag_of.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_TAG_OF_09232005_0845) #define FUSION_TAG_OF_09232005_0845 +#include <boost/fusion/support/config.hpp> #include <boost/utility/enable_if.hpp> #include <boost/type_traits/remove_const.hpp> #include <boost/fusion/support/tag_of_fwd.hpp> |