summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2010-11-24 20:33:19 (GMT)
committerRemko Tronçon <git@el-tramo.be>2010-11-24 20:35:17 (GMT)
commit332d60c56dfaa11fdd135088279d15cd5983b3d4 (patch)
treedd77717a4e1732da929d5ff8a0471fa3f005e201 /3rdParty/Boost/src/boost/concept/detail/msvc.hpp
parent90c44a10fec26d2a0935b2d62e82b6a5be028373 (diff)
downloadswift-332d60c56dfaa11fdd135088279d15cd5983b3d4.zip
swift-332d60c56dfaa11fdd135088279d15cd5983b3d4.tar.bz2
Upgraded Boost to 1.45.0.
Diffstat (limited to '3rdParty/Boost/src/boost/concept/detail/msvc.hpp')
-rw-r--r--3rdParty/Boost/src/boost/concept/detail/msvc.hpp32
1 files changed, 27 insertions, 5 deletions
diff --git a/3rdParty/Boost/src/boost/concept/detail/msvc.hpp b/3rdParty/Boost/src/boost/concept/detail/msvc.hpp
index 3aadb79..9fbd250 100644
--- a/3rdParty/Boost/src/boost/concept/detail/msvc.hpp
+++ b/3rdParty/Boost/src/boost/concept/detail/msvc.hpp
@@ -5,6 +5,7 @@
# define BOOST_CONCEPT_CHECK_MSVC_DWA2006429_HPP
# include <boost/preprocessor/cat.hpp>
+# include <boost/concept/detail/backward_compatibility.hpp>
# ifdef BOOST_OLD_CONCEPT_SUPPORT
# include <boost/concept/detail/has_constraints.hpp>
@@ -12,7 +13,8 @@
# endif
-namespace boost { namespace concept {
+namespace boost { namespace concepts {
+
template <class Model>
struct check
@@ -22,7 +24,19 @@ struct check
x->~Model();
}
};
-
+
+# ifndef BOOST_NO_PARTIAL_SPECIALIZATION
+struct failed {};
+template <class Model>
+struct check<failed ************ Model::************>
+{
+ virtual void failed(Model* x)
+ {
+ x->~Model();
+ }
+};
+# endif
+
# ifdef BOOST_OLD_CONCEPT_SUPPORT
namespace detail
@@ -38,7 +52,11 @@ struct require
: mpl::if_c<
not_satisfied<Model>::value
, detail::constraint
+# ifndef BOOST_NO_PARTIAL_SPECIALIZATION
, check<Model>
+# else
+ , check<failed ************ Model::************>
+# endif
>::type
{};
@@ -46,7 +64,11 @@ struct require
template <class Model>
struct require
- : check<Model>
+# ifndef BOOST_NO_PARTIAL_SPECIALIZATION
+ : check<Model>
+# else
+ : check<failed ************ Model::************>
+# endif
{};
# endif
@@ -70,7 +92,7 @@ struct require<void(*)(Model)>
enum \
{ \
BOOST_PP_CAT(boost_concept_check,__LINE__) = \
- sizeof(::boost::concept::require<ModelFnPtr>) \
+ sizeof(::boost::concepts::require<ModelFnPtr>) \
}
# else // Not vc-7.1
@@ -83,7 +105,7 @@ require_(void(*)(Model));
enum \
{ \
BOOST_PP_CAT(boost_concept_check,__LINE__) = \
- sizeof(::boost::concept::require_((ModelFnPtr)0)) \
+ sizeof(::boost::concepts::require_((ModelFnPtr)0)) \
}
# endif