summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2014-10-19 20:22:58 (GMT)
committerTobias Markmann <tm@ayena.de>2014-10-20 13:49:33 (GMT)
commit6b22dfcf59474dd016a0355a3102a1dd3692d92c (patch)
tree2b1fd33be433a91e81fee84fdc2bf1b52575d934 /3rdParty/Boost/src/boost/serialization/tracking.hpp
parent38b0cb785fea8eae5e48fae56440695fdfd10ee1 (diff)
downloadswift-contrib-6b22dfcf59474dd016a0355a3102a1dd3692d92c.zip
swift-contrib-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/serialization/tracking.hpp')
-rw-r--r--3rdParty/Boost/src/boost/serialization/tracking.hpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/3rdParty/Boost/src/boost/serialization/tracking.hpp b/3rdParty/Boost/src/boost/serialization/tracking.hpp
index fadcbd0..d5c79b8 100644
--- a/3rdParty/Boost/src/boost/serialization/tracking.hpp
+++ b/3rdParty/Boost/src/boost/serialization/tracking.hpp
@@ -1,96 +1,96 @@
#ifndef BOOST_SERIALIZATION_TRACKING_HPP
#define BOOST_SERIALIZATION_TRACKING_HPP
// MS compatible compilers support #pragma once
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#if defined(_MSC_VER)
# pragma once
#endif
/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
// tracking.hpp:
// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com .
// Use, modification and distribution is subject to 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)
// See http://www.boost.org for updates, documentation, and revision history.
#include <boost/config.hpp>
#include <boost/static_assert.hpp>
#include <boost/mpl/eval_if.hpp>
#include <boost/mpl/identity.hpp>
#include <boost/mpl/int.hpp>
#include <boost/mpl/equal_to.hpp>
#include <boost/mpl/greater.hpp>
#include <boost/mpl/integral_c_tag.hpp>
#include <boost/type_traits/is_base_and_derived.hpp>
#include <boost/type_traits/is_pointer.hpp>
#include <boost/serialization/level.hpp>
#include <boost/serialization/tracking_enum.hpp>
#include <boost/serialization/type_info_implementation.hpp>
namespace boost {
namespace serialization {
struct basic_traits;
// default tracking level
template<class T>
struct tracking_level_impl {
template<class U>
struct traits_class_tracking {
- typedef BOOST_DEDUCED_TYPENAME U::tracking type;
+ typedef typename U::tracking type;
};
typedef mpl::integral_c_tag tag;
// note: at least one compiler complained w/o the full qualification
// on basic traits below
typedef
- BOOST_DEDUCED_TYPENAME mpl::eval_if<
+ typename mpl::eval_if<
is_base_and_derived<boost::serialization::basic_traits, T>,
traits_class_tracking< T >,
//else
- BOOST_DEDUCED_TYPENAME mpl::eval_if<
+ typename mpl::eval_if<
is_pointer< T >,
// pointers are not tracked by default
mpl::int_<track_never>,
//else
- BOOST_DEDUCED_TYPENAME mpl::eval_if<
+ typename mpl::eval_if<
// for primitives
- BOOST_DEDUCED_TYPENAME mpl::equal_to<
+ typename mpl::equal_to<
implementation_level< T >,
mpl::int_<primitive_type>
>,
// is never
mpl::int_<track_never>,
// otherwise its selective
mpl::int_<track_selectively>
> > >::type type;
BOOST_STATIC_CONSTANT(int, value = type::value);
};
template<class T>
struct tracking_level :
public tracking_level_impl<const T>
{
};
template<class T, enum tracking_type L>
inline bool operator>=(tracking_level< T > t, enum tracking_type l)
{
return t.value >= (int)l;
}
} // namespace serialization
} // namespace boost
// The STATIC_ASSERT is prevents one from setting tracking for a primitive type.
// This almost HAS to be an error. Doing this will effect serialization of all
// char's in your program which is almost certainly what you don't want to do.
// If you want to track all instances of a given primitive type, You'll have to
// wrap it in your own type so its not a primitive anymore. Then it will compile
// without problem.
#define BOOST_CLASS_TRACKING(T, E) \
namespace boost { \