From 7abade37699ebd471baca54715e6e3511533ef5f Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Thu, 8 Dec 2016 21:38:14 +0000 Subject: [PATCH] [libcxx] [test] Fix MSVC warning C4244 "conversion from 'X' to 'Y', possible loss of data", part 3/7. Add static_cast when constructing pair from (Something, int). Fixes D27540. llvm-svn: 289107 --- .../insert_hint_rvalue.pass.cpp | 16 +++++++-------- .../unord.map.modifiers/insert_rvalue.pass.cpp | 16 +++++++-------- .../insert_hint_rvalue.pass.cpp | 16 +++++++-------- .../insert_rvalue.pass.cpp | 16 +++++++-------- .../utility/pairs/pair.astuple/get_const.pass.cpp | 4 ++-- .../pairs/pair.astuple/get_const_rv.pass.cpp | 4 ++-- .../pairs/pair.astuple/get_non_const.pass.cpp | 2 +- .../utility/pairs/pair.astuple/get_rv.pass.cpp | 2 +- .../pairs.pair/assign_const_pair_U_V.pass.cpp | 2 +- .../pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp | 2 +- .../pairs/pairs.pair/const_pair_U_V_cxx03.pass.cpp | 2 +- .../utility/pairs/pairs.pair/copy_ctor.pass.cpp | 4 ++-- .../utility/pairs/pairs.pair/move_ctor.pass.cpp | 2 +- .../utility/pairs/pairs.pair/swap.pass.cpp | 4 ++-- .../utility/pairs/pairs.spec/comparison.pass.cpp | 24 +++++++++++----------- .../pairs/pairs.spec/non_member_swap.pass.cpp | 4 ++-- 16 files changed, 60 insertions(+), 60 deletions(-) diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp index 04d01eb..471040a 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp @@ -37,22 +37,22 @@ int main() typedef std::pair P; C c; C::const_iterator e = c.end(); - R r = c.insert(e, P(3.5, 3)); + R r = c.insert(e, P(3.5, static_cast(3))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(c.end(), P(3.5, 4)); + r = c.insert(c.end(), P(3.5, static_cast(4))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(c.end(), P(4.5, 4)); + r = c.insert(c.end(), P(4.5, static_cast(4))); assert(c.size() == 2); assert(r->first == 4.5); assert(r->second == 4); - r = c.insert(c.end(), P(5.5, 4)); + r = c.insert(c.end(), P(5.5, static_cast(4))); assert(c.size() == 3); assert(r->first == 5.5); assert(r->second == 4); @@ -90,22 +90,22 @@ int main() typedef std::pair P; C c; C::const_iterator e = c.end(); - R r = c.insert(e, P(3.5, 3)); + R r = c.insert(e, P(3.5, static_cast(3))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(c.end(), P(3.5, 4)); + r = c.insert(c.end(), P(3.5, static_cast(4))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(c.end(), P(4.5, 4)); + r = c.insert(c.end(), P(4.5, static_cast(4))); assert(c.size() == 2); assert(r->first == 4.5); assert(r->second == 4); - r = c.insert(c.end(), P(5.5, 4)); + r = c.insert(c.end(), P(5.5, static_cast(4))); assert(c.size() == 3); assert(r->first == 5.5); assert(r->second == 4); diff --git a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_rvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_rvalue.pass.cpp index faf5b04..8c8551e 100644 --- a/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_rvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_rvalue.pass.cpp @@ -32,25 +32,25 @@ int main() typedef std::pair R; typedef std::pair P; C c; - R r = c.insert(P(3.5, 3)); + R r = c.insert(P(3.5, static_cast(3))); assert(r.second); assert(c.size() == 1); assert(r.first->first == 3.5); assert(r.first->second == 3); - r = c.insert(P(3.5, 4)); + r = c.insert(P(3.5, static_cast(4))); assert(!r.second); assert(c.size() == 1); assert(r.first->first == 3.5); assert(r.first->second == 3); - r = c.insert(P(4.5, 4)); + r = c.insert(P(4.5, static_cast(4))); assert(r.second); assert(c.size() == 2); assert(r.first->first == 4.5); assert(r.first->second == 4); - r = c.insert(P(5.5, 4)); + r = c.insert(P(5.5, static_cast(4))); assert(r.second); assert(c.size() == 3); assert(r.first->first == 5.5); @@ -91,25 +91,25 @@ int main() typedef std::pair R; typedef std::pair P; C c; - R r = c.insert(P(3.5, 3)); + R r = c.insert(P(3.5, static_cast(3))); assert(r.second); assert(c.size() == 1); assert(r.first->first == 3.5); assert(r.first->second == 3); - r = c.insert(P(3.5, 4)); + r = c.insert(P(3.5, static_cast(4))); assert(!r.second); assert(c.size() == 1); assert(r.first->first == 3.5); assert(r.first->second == 3); - r = c.insert(P(4.5, 4)); + r = c.insert(P(4.5, static_cast(4))); assert(r.second); assert(c.size() == 2); assert(r.first->first == 4.5); assert(r.first->second == 4); - r = c.insert(P(5.5, 4)); + r = c.insert(P(5.5, static_cast(4))); assert(r.second); assert(c.size() == 3); assert(r.first->first == 5.5); diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp index d6c0dbd..94faa8f 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp @@ -37,22 +37,22 @@ int main() typedef std::pair P; C c; C::const_iterator e = c.end(); - R r = c.insert(e, P(3.5, 3)); + R r = c.insert(e, P(3.5, static_cast(3))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(r, P(3.5, 4)); + r = c.insert(r, P(3.5, static_cast(4))); assert(c.size() == 2); assert(r->first == 3.5); assert(r->second == 4); - r = c.insert(c.end(), P(4.5, 4)); + r = c.insert(c.end(), P(4.5, static_cast(4))); assert(c.size() == 3); assert(r->first == 4.5); assert(r->second == 4); - r = c.insert(c.end(), P(5.5, 4)); + r = c.insert(c.end(), P(5.5, static_cast(4))); assert(c.size() == 4); assert(r->first == 5.5); assert(r->second == 4); @@ -90,22 +90,22 @@ int main() typedef std::pair P; C c; C::const_iterator e = c.end(); - R r = c.insert(e, P(3.5, 3)); + R r = c.insert(e, P(3.5, static_cast(3))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(r, P(3.5, 4)); + r = c.insert(r, P(3.5, static_cast(4))); assert(c.size() == 2); assert(r->first == 3.5); assert(r->second == 4); - r = c.insert(c.end(), P(4.5, 4)); + r = c.insert(c.end(), P(4.5, static_cast(4))); assert(c.size() == 3); assert(r->first == 4.5); assert(r->second == 4); - r = c.insert(c.end(), P(5.5, 4)); + r = c.insert(c.end(), P(5.5, static_cast(4))); assert(c.size() == 4); assert(r->first == 5.5); assert(r->second == 4); diff --git a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp index 6735b8a..0c8ffeb 100644 --- a/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp +++ b/libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp @@ -32,22 +32,22 @@ int main() typedef C::iterator R; typedef std::pair P; C c; - R r = c.insert(P(3.5, 3)); + R r = c.insert(P(3.5, static_cast(3))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(P(3.5, 4)); + r = c.insert(P(3.5, static_cast(4))); assert(c.size() == 2); assert(r->first == 3.5); assert(r->second == 4); - r = c.insert(P(4.5, 4)); + r = c.insert(P(4.5, static_cast(4))); assert(c.size() == 3); assert(r->first == 4.5); assert(r->second == 4); - r = c.insert(P(5.5, 4)); + r = c.insert(P(5.5, static_cast(4))); assert(c.size() == 4); assert(r->first == 5.5); assert(r->second == 4); @@ -83,22 +83,22 @@ int main() typedef C::iterator R; typedef std::pair P; C c; - R r = c.insert(P(3.5, 3)); + R r = c.insert(P(3.5, static_cast(3))); assert(c.size() == 1); assert(r->first == 3.5); assert(r->second == 3); - r = c.insert(P(3.5, 4)); + r = c.insert(P(3.5, static_cast(4))); assert(c.size() == 2); assert(r->first == 3.5); assert(r->second == 4); - r = c.insert(P(4.5, 4)); + r = c.insert(P(4.5, static_cast(4))); assert(c.size() == 3); assert(r->first == 4.5); assert(r->second == 4); - r = c.insert(P(5.5, 4)); + r = c.insert(P(5.5, static_cast(4))); assert(c.size() == 4); assert(r->first == 5.5); assert(r->second == 4); diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const.pass.cpp index 9ef7bcff..c09c881 100644 --- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const.pass.cpp @@ -24,7 +24,7 @@ int main() { { typedef std::pair P; - const P p(3, 4); + const P p(3, static_cast(4)); assert(std::get<0>(p) == 3); assert(std::get<1>(p) == 4); } @@ -32,7 +32,7 @@ int main() #if TEST_STD_VER > 11 { typedef std::pair P; - constexpr P p1(3, 4); + constexpr P p1(3, static_cast(4)); static_assert(std::get<0>(p1) == 3, ""); static_assert(std::get<1>(p1) == 4, ""); } diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const_rv.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const_rv.pass.cpp index edd2f3d..5c38318 100644 --- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const_rv.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_const_rv.pass.cpp @@ -28,7 +28,7 @@ int main() { { typedef std::pair, short> P; - const P p(std::unique_ptr(new int(3)), 4); + const P p(std::unique_ptr(new int(3)), static_cast(4)); static_assert(std::is_same&&, decltype(std::get<0>(std::move(p)))>::value, ""); static_assert(noexcept(std::get<0>(std::move(p))), ""); const std::unique_ptr&& ptr = std::get<0>(std::move(p)); @@ -58,7 +58,7 @@ int main() #if TEST_STD_VER > 11 { typedef std::pair P; - constexpr const P p1(3, 4); + constexpr const P p1(3, static_cast(4)); static_assert(std::get<0>(std::move(p1)) == 3, ""); static_assert(std::get<1>(std::move(p1)) == 4, ""); } diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_non_const.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_non_const.pass.cpp index 47b4c06..2f8b6c1 100644 --- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_non_const.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_non_const.pass.cpp @@ -34,7 +34,7 @@ int main() { { typedef std::pair P; - P p(3, 4); + P p(3, static_cast(4)); assert(std::get<0>(p) == 3); assert(std::get<1>(p) == 4); std::get<0>(p) = 5; diff --git a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_rv.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_rv.pass.cpp index 24868a6..0601e4e 100644 --- a/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_rv.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pair.astuple/get_rv.pass.cpp @@ -25,7 +25,7 @@ int main() { { typedef std::pair, short> P; - P p(std::unique_ptr(new int(3)), 4); + P p(std::unique_ptr(new int(3)), static_cast(4)); std::unique_ptr ptr = std::get<0>(std::move(p)); assert(*ptr == 3); } diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_pair_U_V.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_pair_U_V.pass.cpp index fdef596..132443f 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_pair_U_V.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_pair_U_V.pass.cpp @@ -21,7 +21,7 @@ int main() { typedef std::pair P1; typedef std::pair P2; - P1 p1(3, 4); + P1 p1(3, static_cast(4)); P2 p2; p2 = p1; assert(p2.first == 3); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp index 5f76aef..76dfc3f 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp @@ -34,7 +34,7 @@ int main() { typedef std::pair, short> P1; typedef std::pair, long> P2; - P1 p1(std::unique_ptr(), 4); + P1 p1(std::unique_ptr(), static_cast(4)); P2 p2; p2 = std::move(p1); assert(p2.first == nullptr); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/const_pair_U_V_cxx03.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/const_pair_U_V_cxx03.pass.cpp index 73a843f..fbf461f 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/const_pair_U_V_cxx03.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/const_pair_U_V_cxx03.pass.cpp @@ -21,7 +21,7 @@ int main() { typedef std::pair P1; typedef std::pair P2; - const P1 p1(3, 4); + const P1 p1(3, static_cast(4)); const P2 p2 = p1; assert(p2.first == 3); assert(p2.second == 4); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/copy_ctor.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/copy_ctor.pass.cpp index 1117db3..1003f3c 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/copy_ctor.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/copy_ctor.pass.cpp @@ -22,7 +22,7 @@ int main() { { typedef std::pair P1; - P1 p1(3, 4); + P1 p1(3, static_cast(4)); P1 p2 = p1; assert(p2.first == 3); assert(p2.second == 4); @@ -30,7 +30,7 @@ int main() #if TEST_STD_VER > 11 { typedef std::pair P1; - constexpr P1 p1(3, 4); + constexpr P1 p1(3, static_cast(4)); constexpr P1 p2 = p1; static_assert(p2.first == 3, ""); static_assert(p2.second == 4, ""); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/move_ctor.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/move_ctor.pass.cpp index 06cb5e5..99e00b0 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/move_ctor.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/move_ctor.pass.cpp @@ -31,7 +31,7 @@ int main() { typedef std::pair P1; static_assert(std::is_move_constructible::value, ""); - P1 p1(3, 4); + P1 p1(3, static_cast(4)); P1 p2 = std::move(p1); assert(p2.first == 3); assert(p2.second == 4); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.pair/swap.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.pair/swap.pass.cpp index dfea61e..95b1f66 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.pair/swap.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.pair/swap.pass.cpp @@ -29,8 +29,8 @@ int main() { { typedef std::pair P1; - P1 p1(3, 4); - P1 p2(5, 6); + P1 p1(3, static_cast(4)); + P1 p2(5, static_cast(6)); p1.swap(p2); assert(p1.first == 5); assert(p1.second == 6); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.spec/comparison.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.spec/comparison.pass.cpp index 0a82c29..3b994df 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.spec/comparison.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.spec/comparison.pass.cpp @@ -27,8 +27,8 @@ int main() { { typedef std::pair P; - P p1(3, 4); - P p2(3, 4); + P p1(3, static_cast(4)); + P p2(3, static_cast(4)); assert( (p1 == p2)); assert(!(p1 != p2)); assert(!(p1 < p2)); @@ -38,8 +38,8 @@ int main() } { typedef std::pair P; - P p1(2, 4); - P p2(3, 4); + P p1(2, static_cast(4)); + P p2(3, static_cast(4)); assert(!(p1 == p2)); assert( (p1 != p2)); assert( (p1 < p2)); @@ -49,8 +49,8 @@ int main() } { typedef std::pair P; - P p1(3, 2); - P p2(3, 4); + P p1(3, static_cast(2)); + P p2(3, static_cast(4)); assert(!(p1 == p2)); assert( (p1 != p2)); assert( (p1 < p2)); @@ -60,8 +60,8 @@ int main() } { typedef std::pair P; - P p1(3, 4); - P p2(2, 4); + P p1(3, static_cast(4)); + P p2(2, static_cast(4)); assert(!(p1 == p2)); assert( (p1 != p2)); assert(!(p1 < p2)); @@ -71,8 +71,8 @@ int main() } { typedef std::pair P; - P p1(3, 4); - P p2(3, 2); + P p1(3, static_cast(4)); + P p2(3, static_cast(2)); assert(!(p1 == p2)); assert( (p1 != p2)); assert(!(p1 < p2)); @@ -84,8 +84,8 @@ int main() #if TEST_STD_VER > 11 { typedef std::pair P; - constexpr P p1(3, 4); - constexpr P p2(3, 2); + constexpr P p1(3, static_cast(4)); + constexpr P p2(3, static_cast(2)); static_assert(!(p1 == p2), ""); static_assert( (p1 != p2), ""); static_assert(!(p1 < p2), ""); diff --git a/libcxx/test/std/utilities/utility/pairs/pairs.spec/non_member_swap.pass.cpp b/libcxx/test/std/utilities/utility/pairs/pairs.spec/non_member_swap.pass.cpp index d9d8f27..62fa942 100644 --- a/libcxx/test/std/utilities/utility/pairs/pairs.spec/non_member_swap.pass.cpp +++ b/libcxx/test/std/utilities/utility/pairs/pairs.spec/non_member_swap.pass.cpp @@ -20,8 +20,8 @@ int main() { { typedef std::pair P1; - P1 p1(3, 4); - P1 p2(5, 6); + P1 p1(3, static_cast(4)); + P1 p2(5, static_cast(6)); swap(p1, p2); assert(p1.first == 5); assert(p1.second == 6); -- 2.7.4