id,summary,reporter,owner,description,type,status,milestone,component,version,severity,resolution,keywords,cc 11066,smart_ptr/detail/sp_convertible.hpp should include ,Fedor Sergeev ,Peter Dimov,"smart_ptr/detail/sp_convertible.hpp uses std::size_t type but does not include cstddef standard header. This can lead to errors if is not included by config headers (happens if stdlib configuration part of config headers is disabled). {{{ ] cat smart1.cc #include ] gcc smart1.cc -DBOOST_NO_CONFIG -I . In file included from ./boost/smart_ptr/intrusive_ptr.hpp:20:0, from smart1.cc:1: ./boost/smart_ptr/detail/sp_convertible.hpp:61:25: error: 'std::size_t' has not been declared ] }}} I got this behavior on Solaris (with Solaris Studio compiler first), but I bet it does not matter. There is a simple fix: {{{ ] git diff . diff --git a/include/boost/smart_ptr/detail/sp_convertible.hpp b/include/boost/smart_ptr/detail/sp_convertible.hpp index 31b2627..4bba9ed 100644 --- a/include/boost/smart_ptr/detail/sp_convertible.hpp +++ b/include/boost/smart_ptr/detail/sp_convertible.hpp @@ -16,6 +16,7 @@ // http://www.boost.org/LICENSE_1_0.txt #include +#include #if !defined( BOOST_SP_NO_SP_CONVERTIBLE ) && defined( BOOST_NO_SFINAE ) # define BOOST_SP_NO_SP_CONVERTIBLE ] }}}",Bugs,new,To Be Determined,smart_ptr,Boost 1.57.0,Problem,,,