From 7cc6744ff63679a75f010dd3cd1c1d1e21cc70b1 Mon Sep 17 00:00:00 2001 From: Thomas Heller Date: Thu, 27 Dec 2012 10:49:19 +0000 Subject: [PATCH] Fixing UB by using memcpy instead of old style cast [SVN r82218] --- include/boost/functional/hash/detail/hash_float.hpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/include/boost/functional/hash/detail/hash_float.hpp b/include/boost/functional/hash/detail/hash_float.hpp index 5e20b9c..a98cd70 100644 --- a/include/boost/functional/hash/detail/hash_float.hpp +++ b/include/boost/functional/hash/detail/hash_float.hpp @@ -73,7 +73,9 @@ namespace boost 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); }