diff options
Diffstat (limited to '3rdParty/Boost/src/boost/concept/detail/msvc.hpp')
-rw-r--r-- | 3rdParty/Boost/src/boost/concept/detail/msvc.hpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/3rdParty/Boost/src/boost/concept/detail/msvc.hpp b/3rdParty/Boost/src/boost/concept/detail/msvc.hpp index 9fbd250..078dd22 100644 --- a/3rdParty/Boost/src/boost/concept/detail/msvc.hpp +++ b/3rdParty/Boost/src/boost/concept/detail/msvc.hpp @@ -1,49 +1,54 @@ // Copyright David Abrahams 2006. 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_CONCEPT_CHECK_MSVC_DWA2006429_HPP # define BOOST_CONCEPT_CHECK_MSVC_DWA2006429_HPP # include <boost/preprocessor/cat.hpp> # include <boost/concept/detail/backward_compatibility.hpp> +# include <boost/config.hpp> # ifdef BOOST_OLD_CONCEPT_SUPPORT # include <boost/concept/detail/has_constraints.hpp> # include <boost/mpl/if.hpp> # endif +# ifdef BOOST_MSVC +# pragma warning(push) +# pragma warning(disable:4100) +# endif namespace boost { namespace concepts { template <class Model> struct check { virtual void failed(Model* x) { 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 { // No need for a virtual function here, since evaluating // not_satisfied below will have already instantiated the // constraints() member. struct constraint {}; } @@ -79,36 +84,40 @@ struct require // The iterator library sees some really strange errors unless we // do things this way. // template <class Model> struct require<void(*)(Model)> { virtual void failed(Model*) { require<Model>(); } }; # define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ enum \ { \ BOOST_PP_CAT(boost_concept_check,__LINE__) = \ sizeof(::boost::concepts::require<ModelFnPtr>) \ } # else // Not vc-7.1 template <class Model> require<Model> require_(void(*)(Model)); # define BOOST_CONCEPT_ASSERT_FN( ModelFnPtr ) \ enum \ { \ BOOST_PP_CAT(boost_concept_check,__LINE__) = \ sizeof(::boost::concepts::require_((ModelFnPtr)0)) \ } # endif }} +# ifdef BOOST_MSVC +# pragma warning(pop) +# endif + #endif // BOOST_CONCEPT_CHECK_MSVC_DWA2006429_HPP |