diff options
-rw-r--r-- | boost/boost.4713.warnings.patch | 40 | ||||
-rw-r--r-- | boost/boost.gcc47679.patch | 15 | ||||
-rw-r--r-- | boost/makefile.mk | 2 |
3 files changed, 57 insertions, 0 deletions
diff --git a/boost/boost.4713.warnings.patch b/boost/boost.4713.warnings.patch index 73b3727aaeae..e323c448e492 100644 --- a/boost/boost.4713.warnings.patch +++ b/boost/boost.4713.warnings.patch @@ -811,3 +811,43 @@ } public: // algorithms +--- misc/boost_1_44_0/boost/unordered/detail/table.hpp 2011-02-10 15:04:57.999046223 +0000 ++++ misc/build/boost_1_44_0/boost/unordered/detail/table.hpp 2011-02-10 15:05:44.260588237 +0000 +@@ -119,7 +119,7 @@ + + // From 6.3.1/13: + // Only resize when size >= mlf_ * count +- return double_to_size_t(ceil((double) mlf_ * this->bucket_count_)); ++ return double_to_size_t(ceil((double)mlf_ * (double)this->bucket_count_)); + } + + template <class T> +@@ -145,7 +145,7 @@ + // + // Or from rehash post-condition: + // count > size / mlf_ +- return next_prime(double_to_size_t(floor(size / (double) mlf_)) + 1); ++ return next_prime(double_to_size_t(floor((double)size / (double)mlf_)) + 1); + } + + //////////////////////////////////////////////////////////////////////////// +--- misc/boost_1_44_0/boost/functional/hash/detail/hash_float_generic.hpp 2011-02-10 14:50:52.173229648 +0000 ++++ misc/build/boost_1_44_0/boost/functional/hash/detail/hash_float_generic.hpp 2011-02-10 14:52:36.824433976 +0000 +@@ -53,7 +53,7 @@ + + v = ldexp(v, limits<std::size_t>::digits); + std::size_t seed = static_cast<std::size_t>(v); +- v -= seed; ++ v -= static_cast<T>(seed); + + // ceiling(digits(T) * log2(radix(T))/ digits(size_t)) - 1; + std::size_t const length +@@ -66,7 +66,7 @@ + { + v = ldexp(v, limits<std::size_t>::digits); + std::size_t part = static_cast<std::size_t>(v); +- v -= part; ++ v -= static_cast<T>(part); + hash_float_combine(seed, part); + } + diff --git a/boost/boost.gcc47679.patch b/boost/boost.gcc47679.patch new file mode 100644 index 000000000000..4af42b0dc854 --- /dev/null +++ b/boost/boost.gcc47679.patch @@ -0,0 +1,15 @@ +--- misc/boost_1_44_0/compare_pointees.hpp 2011-02-10 16:39:05.960176555 +0000 ++++ misc/build/boost_1_44_0/boost/utility/compare_pointees.hpp 2011-02-10 16:40:59.091423279 +0000 +@@ -29,7 +29,11 @@ + inline + bool equal_pointees ( OptionalPointee const& x, OptionalPointee const& y ) + { +- return (!x) != (!y) ? false : ( !x ? true : (*x) == (*y) ) ; ++ if ((!x) != (!y)) ++ return false; ++ if (!x) ++ return true; ++ return (*x) == (*y); + } + + template<class OptionalPointee> diff --git a/boost/makefile.mk b/boost/makefile.mk index 7617addac0de..f931ac596711 100644 --- a/boost/makefile.mk +++ b/boost/makefile.mk @@ -57,6 +57,8 @@ PATCH_FILES+=aliasing.patch PATCH_FILES+=boost.4713.warnings.patch #https://svn.boost.org/trac/boost/ticket/5119 PATCH_FILES+=unordered_map-doesnt-support-cp-ctor.patch +#http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47679 +PATCH_FILES+=boost.gcc47679.patch ADDITIONAL_FILES= \ libs/thread/src/win32/makefile.mk |