Index: boost/functional/hash/detail/hash_float.hpp =================================================================== --- boost/functional/hash/detail/hash_float.hpp (revision 82217) +++ boost/functional/hash/detail/hash_float.hpp (working copy) @@ -73,7 +73,9 @@ ptr += sizeof(std::size_t); while(length >= sizeof(std::size_t)) { - hash_float_combine(seed, *(std::size_t*) ptr); + std::size_t buffer = 0; + std::memcpy(&buffer, ptr, sizeof(std::size_t)); + hash_float_combine(seed, buffer); length -= sizeof(std::size_t); ptr += sizeof(std::size_t); } Index: boost/functional/hash/extensions.hpp =================================================================== --- boost/functional/hash/extensions.hpp (revision 82217) +++ boost/functional/hash/extensions.hpp (working copy) @@ -266,6 +266,7 @@ #if !defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) std::size_t operator()(T const& val) const { + using boost::hash_value; return hash_value(val); } #else