[libcxx] [test] D27020: Fix MSVC warning C4245 "conversion from 'X' to 'Y', signed...
authorStephan T. Lavavej <stl@exchange.microsoft.com>
Wed, 23 Nov 2016 22:02:53 +0000 (22:02 +0000)
committerStephan T. Lavavej <stl@exchange.microsoft.com>
Wed, 23 Nov 2016 22:02:53 +0000 (22:02 +0000)
When initializing unsigned integers to their maximum values, change "const T M(~0);" to "const T M(static_cast<T>(-1));".

~0 and -1 are equivalent, but I consider the -1 form to be significantly clearer (and more consistent with other tests).

llvm-svn: 287827

libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/assign.pass.cpp
libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/copy.pass.cpp
libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/default.pass.cpp
libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/values.pass.cpp

index 8c09f4f..d96ccf9 100644 (file)
@@ -37,7 +37,7 @@ test()
     test1<T, 0, 0, 0>();
     test1<T, 0, 1, 2>();
     test1<T, 1, 1, 2>();
-    const T M(~0);
+    const T M(static_cast<T>(-1));
     test1<T, 0, 0, M>();
     test1<T, 0, M-2, M>();
     test1<T, 0, M-1, M>();
index 4b2b20d..b38e8f5 100644 (file)
@@ -37,7 +37,7 @@ test()
     test1<T, 0, 0, 0>();
     test1<T, 0, 1, 2>();
     test1<T, 1, 1, 2>();
-    const T M(~0);
+    const T M(static_cast<T>(-1));
     test1<T, 0, 0, M>();
     test1<T, 0, M-2, M>();
     test1<T, 0, M-1, M>();
index 6c4a7f4..734b420 100644 (file)
@@ -36,7 +36,7 @@ test()
     test1<T, 0, 0, 0>();
     test1<T, 0, 1, 2>();
     test1<T, 1, 1, 2>();
-    const T M(~0);
+    const T M(static_cast<T>(-1));
     test1<T, 0, 0, M>();
     test1<T, 0, M-2, M>();
     test1<T, 0, M-1, M>();
index 7ff4480..cd496fd 100644 (file)
@@ -72,7 +72,7 @@ test()
     test1<T, 0, 0, 0>();
     test1<T, 0, 1, 2>();
     test1<T, 1, 1, 2>();
-    const T M(~0);
+    const T M(static_cast<T>(-1));
     test1<T, 0, 0, M>();
     test1<T, 0, M-2, M>();
     test1<T, 0, M-1, M>();