From ce779452baf94dce7aca56af38bf0ed28224ddfc Mon Sep 17 00:00:00 2001 From: Daniel James Date: Wed, 17 Aug 2011 07:43:43 +0000 Subject: [PATCH] Unordered: Fix gcc error + warning. [SVN r73839] --- include/boost/unordered/detail/table.hpp | 10 ++++++++-- test/unordered/compile_tests.hpp | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/include/boost/unordered/detail/table.hpp b/include/boost/unordered/detail/table.hpp index 86051d99..c45502cc 100644 --- a/include/boost/unordered/detail/table.hpp +++ b/include/boost/unordered/detail/table.hpp @@ -129,7 +129,9 @@ namespace boost { namespace unordered { namespace detail { // size < mlf_ * count return double_to_size_t(ceil( - (double) this->mlf_ * this->max_bucket_count())) - 1; + static_cast(this->mlf_) * + static_cast(this->max_bucket_count()) + )) - 1; } std::size_t calculate_max_load() @@ -138,7 +140,11 @@ namespace boost { namespace unordered { namespace detail { // 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( + static_cast(this->mlf_) * + static_cast(this->bucket_count_) + )) - 1; + } void max_load_factor(float z) diff --git a/test/unordered/compile_tests.hpp b/test/unordered/compile_tests.hpp index 3b59bcfa..1d556e94 100644 --- a/test/unordered/compile_tests.hpp +++ b/test/unordered/compile_tests.hpp @@ -455,7 +455,7 @@ void unordered_movable_test(X& x, Key& k, T& /* t */, Hash& hf, Pred& eq) typedef BOOST_DEDUCED_TYPENAME X::const_iterator const_iterator; #if !defined(BOOST_NO_RVALUE_REFERENCES) - X x1(rvalue_default(); + X x1(rvalue_default()); X x2(boost::move(x1)); x1 = rvalue_default(); x2 = boost::move(x1);