diff options
author | Enji Cooper <yaneurabeya@gmail.com> | 2019-03-08 19:09:00 (GMT) |
---|---|---|
committer | Enji Cooper <yaneurabeya@gmail.com> | 2019-04-06 04:30:19 (GMT) |
commit | 3829b84e9927a2a77a7634a8e7b010cc57095e1b (patch) | |
tree | 14762102e4f3bb5c34ff91711ce181a95574b812 /googletest/test | |
parent | 5ba69d5cb93779fba14bf438dfdaf589e2b92071 (diff) | |
download | googletest-3829b84e9927a2a77a7634a8e7b010cc57095e1b.zip googletest-3829b84e9927a2a77a7634a8e7b010cc57095e1b.tar.gz googletest-3829b84e9927a2a77a7634a8e7b010cc57095e1b.tar.bz2 |
clang: fix `-Wsign-conversion` errors
Cast some values as their unsigned equivalents or `size_t` to match the
parameter type used for the template object under test. Also, provide
UInt32 equivalent delegate methods for some callers (with
int-equivalents for backwards compatibility).
This closes #2146.
Signed-off-by: Enji Cooper <yaneurabeya@gmail.com>
Diffstat (limited to 'googletest/test')
-rw-r--r-- | googletest/test/googletest-death-test-test.cc | 6 | ||||
-rw-r--r-- | googletest/test/googletest-port-test.cc | 4 | ||||
-rw-r--r-- | googletest/test/gtest_unittest.cc | 36 |
3 files changed, 24 insertions, 22 deletions
diff --git a/googletest/test/googletest-death-test-test.cc b/googletest/test/googletest-death-test-test.cc index b864541..272b9c3 100644 --- a/googletest/test/googletest-death-test-test.cc +++ b/googletest/test/googletest-death-test-test.cc @@ -884,10 +884,12 @@ class MockDeathTestFactory : public DeathTestFactory { int AssumeRoleCalls() const { return assume_role_calls_; } int WaitCalls() const { return wait_calls_; } size_t PassedCalls() const { return passed_args_.size(); } - bool PassedArgument(int n) const { return passed_args_[n]; } + bool PassedArgument(int n) const { + return passed_args_[static_cast<size_t>(n)]; + } size_t AbortCalls() const { return abort_args_.size(); } DeathTest::AbortReason AbortArgument(int n) const { - return abort_args_[n]; + return abort_args_[static_cast<size_t>(n)]; } bool TestDeleted() const { return test_deleted_; } diff --git a/googletest/test/googletest-port-test.cc b/googletest/test/googletest-port-test.cc index 6cb791e..42035cc 100644 --- a/googletest/test/googletest-port-test.cc +++ b/googletest/test/googletest-port-test.cc @@ -1048,7 +1048,7 @@ class AtomicCounterWithMutex { pthread_mutex_init(&memory_barrier_mutex, nullptr)); GTEST_CHECK_POSIX_SUCCESS_(pthread_mutex_lock(&memory_barrier_mutex)); - SleepMilliseconds(random_.Generate(30)); + SleepMilliseconds(static_cast<int>(random_.Generate(30))); GTEST_CHECK_POSIX_SUCCESS_(pthread_mutex_unlock(&memory_barrier_mutex)); GTEST_CHECK_POSIX_SUCCESS_(pthread_mutex_destroy(&memory_barrier_mutex)); @@ -1056,7 +1056,7 @@ class AtomicCounterWithMutex { // On Windows, performing an interlocked access puts up a memory barrier. volatile LONG dummy = 0; ::InterlockedIncrement(&dummy); - SleepMilliseconds(random_.Generate(30)); + SleepMilliseconds(static_cast<int>(random_.Generate(30))); ::InterlockedIncrement(&dummy); #else # error "Memory barrier not implemented on this platform." diff --git a/googletest/test/gtest_unittest.cc b/googletest/test/gtest_unittest.cc index 9c1827d..0c8bf99 100644 --- a/googletest/test/gtest_unittest.cc +++ b/googletest/test/gtest_unittest.cc @@ -899,23 +899,23 @@ TEST(ContainerUtilityDeathTest, ShuffleRange) { class VectorShuffleTest : public Test { protected: - static const int kVectorSize = 20; + static const size_t kVectorSize = 20; VectorShuffleTest() : random_(1) { - for (int i = 0; i < kVectorSize; i++) { + for (int i = 0; i < static_cast<int>(kVectorSize); i++) { vector_.push_back(i); } } static bool VectorIsCorrupt(const TestingVector& vector) { - if (kVectorSize != static_cast<int>(vector.size())) { + if (kVectorSize != vector.size()) { return true; } bool found_in_vector[kVectorSize] = { false }; for (size_t i = 0; i < vector.size(); i++) { const int e = vector[i]; - if (e < 0 || e >= kVectorSize || found_in_vector[e]) { + if (e < 0 || e >= static_cast<int>(kVectorSize) || found_in_vector[e]) { return true; } found_in_vector[e] = true; @@ -932,7 +932,7 @@ class VectorShuffleTest : public Test { static bool RangeIsShuffled(const TestingVector& vector, int begin, int end) { for (int i = begin; i < end; i++) { - if (i != vector[i]) { + if (i != vector[static_cast<size_t>(i)]) { return true; } } @@ -956,7 +956,7 @@ class VectorShuffleTest : public Test { TestingVector vector_; }; // class VectorShuffleTest -const int VectorShuffleTest::kVectorSize; +const size_t VectorShuffleTest::kVectorSize; TEST_F(VectorShuffleTest, HandlesEmptyRange) { // Tests an empty range at the beginning... @@ -1008,7 +1008,7 @@ TEST_F(VectorShuffleTest, ShufflesEntireVector) { // Tests the first and last elements in particular to ensure that // there are no off-by-one problems in our shuffle algorithm. EXPECT_NE(0, vector_[0]); - EXPECT_NE(kVectorSize - 1, vector_[kVectorSize - 1]); + EXPECT_NE(static_cast<int>(kVectorSize - 1), vector_[kVectorSize - 1]); } TEST_F(VectorShuffleTest, ShufflesStartOfVector) { @@ -1018,7 +1018,7 @@ TEST_F(VectorShuffleTest, ShufflesStartOfVector) { ASSERT_PRED1(VectorIsNotCorrupt, vector_); EXPECT_PRED3(RangeIsShuffled, vector_, 0, kRangeSize); - EXPECT_PRED3(RangeIsUnshuffled, vector_, kRangeSize, kVectorSize); + EXPECT_PRED3(RangeIsUnshuffled, vector_, kRangeSize, static_cast<int>(kVectorSize)); } TEST_F(VectorShuffleTest, ShufflesEndOfVector) { @@ -1027,23 +1027,23 @@ TEST_F(VectorShuffleTest, ShufflesEndOfVector) { ASSERT_PRED1(VectorIsNotCorrupt, vector_); EXPECT_PRED3(RangeIsUnshuffled, vector_, 0, kRangeSize); - EXPECT_PRED3(RangeIsShuffled, vector_, kRangeSize, kVectorSize); + EXPECT_PRED3(RangeIsShuffled, vector_, kRangeSize, static_cast<int>(kVectorSize)); } TEST_F(VectorShuffleTest, ShufflesMiddleOfVector) { - int kRangeSize = kVectorSize/3; + int kRangeSize = static_cast<int>(kVectorSize)/3; ShuffleRange(&random_, kRangeSize, 2*kRangeSize, &vector_); ASSERT_PRED1(VectorIsNotCorrupt, vector_); EXPECT_PRED3(RangeIsUnshuffled, vector_, 0, kRangeSize); EXPECT_PRED3(RangeIsShuffled, vector_, kRangeSize, 2*kRangeSize); - EXPECT_PRED3(RangeIsUnshuffled, vector_, 2*kRangeSize, kVectorSize); + EXPECT_PRED3(RangeIsUnshuffled, vector_, 2*kRangeSize, static_cast<int>(kVectorSize)); } TEST_F(VectorShuffleTest, ShufflesRepeatably) { TestingVector vector2; - for (int i = 0; i < kVectorSize; i++) { - vector2.push_back(i); + for (size_t i = 0; i < kVectorSize; i++) { + vector2.push_back(static_cast<int>(i)); } random_.Reseed(1234); @@ -1054,7 +1054,7 @@ TEST_F(VectorShuffleTest, ShufflesRepeatably) { ASSERT_PRED1(VectorIsNotCorrupt, vector_); ASSERT_PRED1(VectorIsNotCorrupt, vector2); - for (int i = 0; i < kVectorSize; i++) { + for (size_t i = 0; i < kVectorSize; i++) { EXPECT_EQ(vector_[i], vector2[i]) << " where i is " << i; } } @@ -3496,7 +3496,7 @@ std::string EditsToString(const std::vector<EditType>& edits) { std::vector<size_t> CharsToIndices(const std::string& str) { std::vector<size_t> out; for (size_t i = 0; i < str.size(); ++i) { - out.push_back(str[i]); + out.push_back(static_cast<size_t>(str[i])); } return out; } @@ -5654,11 +5654,11 @@ class ParseFlagsTest : public Test { // Asserts that two narrow or wide string arrays are equal. template <typename CharType> - static void AssertStringArrayEq(size_t size1, CharType** array1, - size_t size2, CharType** array2) { + static void AssertStringArrayEq(int size1, CharType** array1, + int size2, CharType** array2) { ASSERT_EQ(size1, size2) << " Array sizes different."; - for (size_t i = 0; i != size1; i++) { + for (int i = 0; i != size1; i++) { ASSERT_STREQ(array1[i], array2[i]) << " where i == " << i; } } |