port https://svn.boost.org/trac/boost/changeset/80273 from Boost svn