diff --git a/test/exception/insert_exception_tests.cpp b/test/exception/insert_exception_tests.cpp index 654072f7..c2e2999a 100644 --- a/test/exception/insert_exception_tests.cpp +++ b/test/exception/insert_exception_tests.cpp @@ -17,7 +17,7 @@ template struct insert_test_base : public test::exception_base { test::random_values values; - insert_test_base(unsigned int count = 5) : values(count) {} + insert_test_base(unsigned int count = 5) : values(count, test::limited_range) {} typedef T data_type; typedef test::strong strong_type; @@ -136,7 +136,7 @@ struct insert_test_rehash1 : public insert_test_base ceil((double) bucket_count * (double) x.max_load_factor()) - 1); BOOST_TEST(initial_elements < this->values.size()); x.insert(this->values.begin(), - boost::next(this->values.begin(), initial_elements)); + this->values.begin() + initial_elements); BOOST_TEST(bucket_count == x.bucket_count()); return x; } @@ -147,8 +147,7 @@ struct insert_test_rehash1 : public insert_test_base BOOST_DEDUCED_TYPENAME T::const_iterator pos = x.cbegin(); for(BOOST_DEDUCED_TYPENAME test::random_values::const_iterator - it = boost::next(this->values.begin(), x.size()), - end = this->values.end(); + it = this->values.begin() + x.size(), end = this->values.end(); it != end && count < 10; ++it, ++count) { strong.store(x, test::detail::tracker.count_allocations); @@ -171,7 +170,7 @@ struct insert_test_rehash2 : public insert_test_rehash1 int count = 0; for(BOOST_DEDUCED_TYPENAME test::random_values::const_iterator - it = boost::next(this->values.begin(), x.size()), + it = this->values.begin(), x.size()), end = this->values.end(); it != end && count < 10; ++it, ++count) { @@ -208,8 +207,7 @@ struct insert_test_rehash3 : public insert_test_base rehash_bucket_count > 5 ? rehash_bucket_count - 5 : 1; BOOST_TEST(initial_elements < this->values.size()); - x.insert(this->values.begin(), - boost::next(this->values.begin(), initial_elements)); + x.insert(this->values.begin(), this->values.begin() + initial_elements); BOOST_TEST(original_bucket_count == x.bucket_count()); return x; } @@ -217,8 +215,8 @@ struct insert_test_rehash3 : public insert_test_base void run(T& x) const { BOOST_DEDUCED_TYPENAME T::size_type bucket_count = x.bucket_count(); - x.insert(boost::next(this->values.begin(), x.size()), - boost::next(this->values.begin(), x.size() + 20)); + x.insert(this->values.begin() + x.size(), + this->values.begin() + x.size() + 20); // This isn't actually a failure, but it means the test isn't doing its // job. diff --git a/test/objects/exception.hpp b/test/objects/exception.hpp index 7ffe8f4c..0e0aa869 100644 --- a/test/objects/exception.hpp +++ b/test/objects/exception.hpp @@ -150,8 +150,10 @@ namespace exception switch(tag_) { case 1: result = x.tag1_; + break; case 2: result = x.tag2_; + break; default: result = x.tag1_ + x.tag2_; } diff --git a/test/unordered/erase_equiv_tests.cpp b/test/unordered/erase_equiv_tests.cpp index 26da1455..98da1e6d 100644 --- a/test/unordered/erase_equiv_tests.cpp +++ b/test/unordered/erase_equiv_tests.cpp @@ -143,9 +143,13 @@ bool compare(Range1 const& x, Range2 const& y) template bool general_erase_range_test(Container& x, std::size_t start, std::size_t end) { + typedef BOOST_DEDUCED_TYPENAME Container::difference_type difference_type; + difference_type start2 = start, end2 = end; + collide_list l(x.begin(), x.end()); - l.erase(boost::next(l.begin(), start), boost::next(l.begin(), end)); - x.erase(boost::next(x.begin(), start), boost::next(x.begin(), end)); + + l.erase(boost::next(l.begin(), start2), boost::next(l.begin(), end2)); + x.erase(boost::next(x.begin(), start2), boost::next(x.begin(), end2)); test::check_equivalent_keys(x); return compare(l, x); diff --git a/test/unordered/erase_tests.cpp b/test/unordered/erase_tests.cpp index 2204e4b3..5d986a7f 100644 --- a/test/unordered/erase_tests.cpp +++ b/test/unordered/erase_tests.cpp @@ -91,7 +91,8 @@ void erase_tests1(Container*, test::random_generator generator) prev = pos = x.begin(); } else { - prev = boost::next(x.begin(), index - 1); + prev = boost::next(x.begin(), + static_cast(index - 1)); pos = boost::next(prev); } next = boost::next(pos); @@ -220,7 +221,8 @@ void erase_tests1(Container*, test::random_generator generator) prev = pos = x.begin(); } else { - prev = boost::next(x.begin(), index - 1); + prev = boost::next(x.begin(), + static_cast(index - 1)); pos = boost::next(prev); } next = boost::next(pos); diff --git a/test/unordered/insert_tests.cpp b/test/unordered/insert_tests.cpp index db34ec4a..07b30932 100644 --- a/test/unordered/insert_tests.cpp +++ b/test/unordered/insert_tests.cpp @@ -443,17 +443,17 @@ void default_emplace_tests(X*, test::random_generator) x.emplace(); BOOST_TEST(x.size() == 1); x.emplace(); - BOOST_TEST(x.size() == (is_unique ? 1: 2)); + BOOST_TEST(x.size() == (is_unique ? 1u : 2u)); x.emplace(); - BOOST_TEST(x.size() == (is_unique ? 1: 3)); + BOOST_TEST(x.size() == (is_unique ? 1u : 3u)); typename X::value_type y; - BOOST_TEST(x.count(test::get_key(y)) == (is_unique ? 1: 3)); + BOOST_TEST(x.count(test::get_key(y)) == (is_unique ? 1u : 3u)); BOOST_TEST(*x.equal_range(test::get_key(y)).first == y); x.emplace(y); - BOOST_TEST(x.size() == (is_unique ? 1: 4)); - BOOST_TEST(x.count(test::get_key(y)) == (is_unique ? 1: 4)); + BOOST_TEST(x.size() == (is_unique ? 1u : 4u)); + BOOST_TEST(x.count(test::get_key(y)) == (is_unique ? 1u : 4u)); BOOST_TEST(*x.equal_range(test::get_key(y)).first == y); x.clear(); @@ -461,9 +461,9 @@ void default_emplace_tests(X*, test::random_generator) x.emplace(y); BOOST_TEST(x.size() == 1); x.emplace(y); - BOOST_TEST(x.size() == (is_unique ? 1: 2)); + BOOST_TEST(x.size() == (is_unique ? 1u : 2u)); - BOOST_TEST(x.count(test::get_key(y)) == (is_unique ? 1: 2)); + BOOST_TEST(x.count(test::get_key(y)) == (is_unique ? 1u : 2u)); BOOST_TEST(*x.equal_range(test::get_key(y)).first == y); }