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/static_warning.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/static_warning.hpp')
-rw-r--r--3rdParty/Boost/src/boost/serialization/static_warning.hpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/3rdParty/Boost/src/boost/serialization/static_warning.hpp b/3rdParty/Boost/src/boost/serialization/static_warning.hpp
index b41791a..d2f23d3 100644
--- a/3rdParty/Boost/src/boost/serialization/static_warning.hpp
+++ b/3rdParty/Boost/src/boost/serialization/static_warning.hpp
@@ -1,108 +1,108 @@
#ifndef BOOST_SERIALIZATION_STATIC_WARNING_HPP
#define BOOST_SERIALIZATION_STATIC_WARNING_HPP
// (C) Copyright Robert Ramey 2003. Jonathan Turkanis 2004.
// Use, modification and distribution is subject to the Boost Software
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
// MS compatible compilers support #pragma once
-#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+#if defined(_MSC_VER)
# pragma once
#endif
// http://www.boost.org/LICENSE_1_0.txt)
// See http://www.boost.org/libs/static_assert for documentation.
/*
Revision history:
15 June 2003 - Initial version.
31 March 2004 - improved diagnostic messages and portability
(Jonathan Turkanis)
03 April 2004 - works on VC6 at class and namespace scope
- ported to DigitalMars
- static warnings disabled by default; when enabled,
uses pragmas to enable required compiler warnings
on MSVC, Intel, Metrowerks and Borland 5.x.
(Jonathan Turkanis)
30 May 2004 - tweaked for msvc 7.1 and gcc 3.3
- static warnings ENabled by default; when enabled,
(Robert Ramey)
*/
#include <boost/config.hpp>
//
// Implementation
// Makes use of the following warnings:
// 1. GCC prior to 3.3: division by zero.
// 2. BCC 6.0 preview: unreferenced local variable.
// 3. DigitalMars: returning address of local automatic variable.
// 4. VC6: class previously seen as struct (as in 'boost/mpl/print.hpp')
// 5. All others: deletion of pointer to incomplete type.
//
// The trick is to find code which produces warnings containing the name of
// a structure or variable. Details, with same numbering as above:
// 1. static_warning_impl<B>::value is zero iff B is false, so diving an int
// by this value generates a warning iff B is false.
// 2. static_warning_impl<B>::type has a constructor iff B is true, so an
// unreferenced variable of this type generates a warning iff B is false.
// 3. static_warning_impl<B>::type overloads operator& to return a dynamically
// allocated int pointer only is B is true, so returning the address of an
// automatic variable of this type generates a warning iff B is fasle.
// 4. static_warning_impl<B>::STATIC_WARNING is decalred as a struct iff B is
// false.
// 5. static_warning_impl<B>::type is incomplete iff B is false, so deleting a
// pointer to this type generates a warning iff B is false.
//
//------------------Enable selected warnings----------------------------------//
// Enable the warnings relied on by BOOST_STATIC_WARNING, where possible. The
// only pragma which is absolutely necessary here is for Borland 5.x, since
// W8073 is disabled by default. If enabling selected warnings is considered
// unacceptable, this section can be replaced with:
// #if defined(__BORLANDC__) && (__BORLANDC__ <= 0x600)
// pragma warn +st
// #endif
// 6. replaced implementation with one which depends solely on
// mpl::print<>. The previous one was found to fail for functions
// under recent versions of gcc and intel compilers - Robert Ramey
#include <boost/mpl/bool.hpp>
#include <boost/mpl/print.hpp>
#include <boost/mpl/eval_if.hpp>
+#include <boost/static_assert.hpp>
namespace boost {
namespace serialization {
template<int L>
struct BOOST_SERIALIZATION_STATIC_WARNING_LINE{};
template<bool B, int L>
struct static_warning_test{
typename boost::mpl::eval_if_c<
B,
boost::mpl::true_,
typename boost::mpl::identity<
boost::mpl::print<
BOOST_SERIALIZATION_STATIC_WARNING_LINE<L>
>
>
>::type type;
};
template<int i>
struct BOOST_SERIALIZATION_SS {};
} // serialization
} // boost
#define BOOST_SERIALIZATION_BSW(B, L) \
typedef boost::serialization::BOOST_SERIALIZATION_SS< \
sizeof( boost::serialization::static_warning_test< B, L > ) \
- > BOOST_JOIN(STATIC_WARNING_LINE, L);
-
+ > BOOST_JOIN(STATIC_WARNING_LINE, L) BOOST_STATIC_ASSERT_UNUSED_ATTRIBUTE;
#define BOOST_STATIC_WARNING(B) BOOST_SERIALIZATION_BSW(B, __LINE__)
#endif // BOOST_SERIALIZATION_STATIC_WARNING_HPP