Fix usage of Boost smart pointers for compatibility with Boost >= 1.53

This commit is contained in:
Renaud Barate 2014-03-25 16:19:08 +01:00
parent 8608b2b5ca
commit 78eecd21fc
3 changed files with 5 additions and 4 deletions

View File

@ -48,7 +48,7 @@ namespace MED
//! Construct the class by any specialisation of the class
template<class Y>
SharedPtr(SharedPtr<Y> const & r):
boost::shared_ptr<T>(r,boost::detail::dynamic_cast_tag())
boost::shared_ptr<T>(boost::dynamic_pointer_cast<T,Y>(r))
{}
//! Copy-constructor
@ -56,7 +56,7 @@ namespace MED
SharedPtr&
operator=(SharedPtr<Y> const & r)
{
boost::shared_ptr<T>(r,boost::detail::dynamic_cast_tag()).swap(*this);
SharedPtr<T>(r).swap(*this);
return *this;
}

View File

@ -1002,14 +1002,14 @@ namespace MED
template<class Y>
SharedPtr(SharedPtr<Y> const & r):
boost::shared_ptr<TWrapper>(r,boost::detail::dynamic_cast_tag())
boost::shared_ptr<TWrapper>(boost::dynamic_pointer_cast<TWrapper,Y>(r))
{}
template<class Y>
SharedPtr&
operator=(SharedPtr<Y> const & r)
{
boost::shared_ptr<TWrapper>(r,boost::detail::dynamic_cast_tag()).swap(*this);
SharedPtr<TWrapper>(r).swap(*this);
return *this;
}

View File

@ -42,6 +42,7 @@ SET(_link_LIBRARIES
${CAS_TKG3d}
${CAS_TKGeomBase}
${CAS_TKGeomAlgo}
${Boost_LIBRARIES}
SMESHDS
)