From bdf8bae8bbd293eb2bc696c827b32c7e6dc0fd01 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Wed, 23 Nov 2016 22:02:35 +0000 Subject: [PATCH] [libcxx] [test] D27018: Fix MSVC warning C4018 "signed/unsigned mismatch", part 5/12. Various changes: test/std/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp Change M from unsigned to int. It's compared against "int x", and we binary_search() for it within a vector. test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval.pass.cpp test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval_param.pass.cpp Add static_cast when comparing int to unsigned. test/std/strings/basic.string/string.cons/size_char_alloc.pass.cpp Change unsigned indices to int when we're being given int as a bound. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@287825 91177308-0d34-0410-b5e6-96231b3b80d8 --- .../alg.binary.search/binary.search/binary_search.pass.cpp | 2 +- .../rand.dis/rand.dist.norm/rand.dist.norm.f/eval.pass.cpp | 2 +- .../rand.dist.norm/rand.dist.norm.f/eval_param.pass.cpp | 2 +- .../strings/basic.string/string.cons/size_char_alloc.pass.cpp | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/test/std/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp b/test/std/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp index 1f74a9a1b..d4d31cb30 100644 --- a/test/std/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp +++ b/test/std/algorithms/alg.sorting/alg.binary.search/binary.search/binary_search.pass.cpp @@ -34,7 +34,7 @@ void test() { const unsigned N = 1000; - const unsigned M = 10; + const int M = 10; std::vector v(N); int x = 0; for (std::size_t i = 0; i < v.size(); ++i) diff --git a/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval.pass.cpp b/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval.pass.cpp index 091bbb9bb..4da7f2e70 100644 --- a/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval.pass.cpp +++ b/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval.pass.cpp @@ -34,7 +34,7 @@ double I(double x, unsigned a, unsigned b) { double r = 0; - for (int j = a; j <= a+b-1; ++j) + for (int j = a; static_cast(j) <= a+b-1; ++j) r += fac(a+b-1)/(fac(j) * fac(a + b - 1 - j)) * std::pow(x, j) * std::pow(1-x, a+b-1-j); return r; diff --git a/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval_param.pass.cpp b/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval_param.pass.cpp index 774137154..74025b701 100644 --- a/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval_param.pass.cpp +++ b/test/std/numerics/rand/rand.dis/rand.dist.norm/rand.dist.norm.f/eval_param.pass.cpp @@ -34,7 +34,7 @@ double I(double x, unsigned a, unsigned b) { double r = 0; - for (int j = a; j <= a+b-1; ++j) + for (int j = a; static_cast(j) <= a+b-1; ++j) r += fac(a+b-1)/(fac(j) * fac(a + b - 1 - j)) * std::pow(x, j) * std::pow(1-x, a+b-1-j); return r; diff --git a/test/std/strings/basic.string/string.cons/size_char_alloc.pass.cpp b/test/std/strings/basic.string/string.cons/size_char_alloc.pass.cpp index 60d41b1d3..81b4b77fb 100644 --- a/test/std/strings/basic.string/string.cons/size_char_alloc.pass.cpp +++ b/test/std/strings/basic.string/string.cons/size_char_alloc.pass.cpp @@ -62,7 +62,7 @@ test(Tp n, Tp c) S s2(n, c); LIBCPP_ASSERT(s2.__invariants()); assert(s2.size() == n); - for (unsigned i = 0; i < n; ++i) + for (int i = 0; i < n; ++i) assert(s2[i] == c); assert(s2.get_allocator() == A()); assert(s2.capacity() >= s2.size()); @@ -78,7 +78,7 @@ test(Tp n, Tp c, const A& a) S s2(n, c, a); LIBCPP_ASSERT(s2.__invariants()); assert(s2.size() == n); - for (unsigned i = 0; i < n; ++i) + for (int i = 0; i < n; ++i) assert(s2[i] == c); assert(s2.get_allocator() == a); assert(s2.capacity() >= s2.size());