diff --git a/include/boost/detail/allocator_utilities.hpp b/include/boost/detail/allocator_utilities.hpp index 91b0fa7..6453af0 100644 --- a/include/boost/detail/allocator_utilities.hpp +++ b/include/boost/detail/allocator_utilities.hpp @@ -181,7 +181,13 @@ void construct(void* p,const Type& t) template void destroy(const Type* p) { + +#if BOOST_WORKAROUND(__SUNPRO_CC,BOOST_TESTED_AT(0x590)) + const_cast(p)->~Type(); +#else p->~Type(); +#endif + } } /* namespace boost::detail::allocator */ diff --git a/include/boost/detail/utf8_codecvt_facet.hpp b/include/boost/detail/utf8_codecvt_facet.hpp index 13c8346..5a73e54 100644 --- a/include/boost/detail/utf8_codecvt_facet.hpp +++ b/include/boost/detail/utf8_codecvt_facet.hpp @@ -79,8 +79,8 @@ // specialized on those types for this to work. #include -#include // for mbstate_t -#include // for std::size_t +#include // for mbstate_t +#include // for std::size_t #include #include @@ -88,6 +88,7 @@ #if defined(BOOST_NO_STDC_NAMESPACE) using ::codecvt; using ::mbstate_t; + using ::size_t #endif #if !defined(__MSL_CPP__) && !defined(__LIBCOMO__)