Index: test/std/containers/associative/map/map.cons/assign_initializer_list.pass.cpp =================================================================== --- test/std/containers/associative/map/map.cons/assign_initializer_list.pass.cpp +++ test/std/containers/associative/map/map.cons/assign_initializer_list.pass.cpp @@ -75,23 +75,22 @@ void duplicate_keys_test() { typedef std::map, test_allocator > > Map; - typedef test_alloc_base AllocBase; { - LIBCPP_ASSERT(AllocBase::alloc_count == 0); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 0); Map s = {{1, 0}, {2, 0}, {3, 0}}; - LIBCPP_ASSERT(AllocBase::alloc_count == 3); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 3); s = {{4, 0}, {4, 0}, {4, 0}, {4, 0}}; - LIBCPP_ASSERT(AllocBase::alloc_count == 1); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 1); assert(s.size() == 1); assert(s.begin()->first == 4); } - LIBCPP_ASSERT(AllocBase::alloc_count == 0); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 0); } int main(int, char**) { - test_basic(); - duplicate_keys_test(); + test_basic(); + duplicate_keys_test(); return 0; } Index: test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp =================================================================== --- test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp +++ test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp @@ -57,17 +57,16 @@ void duplicate_keys_test() { typedef std::set, test_allocator > Set; - typedef test_alloc_base AllocBase; { - LIBCPP_ASSERT(AllocBase::alloc_count == 0); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 0); Set s = {1, 2, 3}; - LIBCPP_ASSERT(AllocBase::alloc_count == 3); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 3); s = {4, 4, 4, 4, 4}; - LIBCPP_ASSERT(AllocBase::alloc_count == 1); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 1); assert(s.size() == 1); assert(*s.begin() == 4); } - LIBCPP_ASSERT(AllocBase::alloc_count == 0); + LIBCPP_ASSERT(test_alloc_base::alloc_count == 0); } int main(int, char**) { Index: test/std/containers/unord/unord.map/unord.map.cnstr/deduct.pass.cpp =================================================================== --- test/std/containers/unord/unord.map/unord.map.cnstr/deduct.pass.cpp +++ test/std/containers/unord/unord.map/unord.map.cnstr/deduct.pass.cpp @@ -64,6 +64,11 @@ #include "test_allocator.h" +#ifdef TEST_COMPILER_C1XX +#pragma warning(disable: 4242) // '%s': conversion from '%s' to '%s', possible loss of data +#pragma warning(disable: 4244) // '%s': conversion from '%s' to '%s', possible loss of data +#endif // TEST_COMPILER_C1XX + using P = std::pair; using PC = std::pair; Index: test/std/containers/unord/unord.multiset/unord.multiset.cnstr/deduct.pass.cpp =================================================================== --- test/std/containers/unord/unord.multiset/unord.multiset.cnstr/deduct.pass.cpp +++ test/std/containers/unord/unord.multiset/unord.multiset.cnstr/deduct.pass.cpp @@ -56,6 +56,11 @@ #include "test_allocator.h" +#ifdef TEST_COMPILER_C1XX +#pragma warning(disable: 4242) // '%s': conversion from '%s' to '%s', possible loss of data +#pragma warning(disable: 4244) // '%s': conversion from '%s' to '%s', possible loss of data +#endif // TEST_COMPILER_C1XX + int main(int, char**) { const int expected_s[] = {1, 1, 2, 3, INT_MAX}; Index: test/std/containers/unord/unord.set/unord.set.cnstr/deduct.pass.cpp =================================================================== --- test/std/containers/unord/unord.set/unord.set.cnstr/deduct.pass.cpp +++ test/std/containers/unord/unord.set/unord.set.cnstr/deduct.pass.cpp @@ -56,6 +56,11 @@ #include "test_allocator.h" +#ifdef TEST_COMPILER_C1XX +#pragma warning(disable: 4242) // '%s': conversion from '%s' to '%s', possible loss of data +#pragma warning(disable: 4244) // '%s': conversion from '%s' to '%s', possible loss of data +#endif // TEST_COMPILER_C1XX + int main(int, char**) { const int expected_s[] = {1, 2, 3, INT_MAX}; Index: test/std/numerics/c.math/abs.pass.cpp =================================================================== --- test/std/numerics/c.math/abs.pass.cpp +++ test/std/numerics/c.math/abs.pass.cpp @@ -9,6 +9,7 @@ #include #include #include +#include #include #include "test_macros.h" @@ -75,4 +76,3 @@ return 0; } - Index: test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp =================================================================== --- test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp +++ test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.float.pass.cpp @@ -41,7 +41,7 @@ constexpr T maxV = std::numeric_limits::max(); constexpr T minV = std::numeric_limits::min(); - + // Things that can be compared exactly static_assert((std::midpoint(T(0), T(0)) == T(0)), ""); static_assert((std::midpoint(T(2), T(4)) == T(3)), ""); @@ -58,7 +58,7 @@ assert((fptest_close_pct(std::midpoint(T(0.1), T(0.4)), T(0.25), pct))); assert((fptest_close_pct(std::midpoint(T(11.2345), T(14.5432)), T(12.88885), pct))); - + // From e to pi assert((fptest_close_pct(std::midpoint(T(2.71828182845904523536028747135266249775724709369995), T(3.14159265358979323846264338327950288419716939937510)), @@ -86,7 +86,7 @@ // TODO // Check two values "close to each other" - T d1 = 3.14; + T d1 = T(3.14); T d0 = std::nextafter(d1, T(2)); T d2 = std::nextafter(d1, T(5)); assert(d0 < d1); // sanity checking Index: test/std/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp =================================================================== --- test/std/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp +++ test/std/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp @@ -42,7 +42,7 @@ ASSERT_SAME_TYPE(Expected, typename std::underlying_type::type); #if TEST_STD_VER > 11 ASSERT_SAME_TYPE(Expected, typename std::underlying_type_t); -#endif +#endif } enum E { V = INT_MIN }; @@ -79,7 +79,9 @@ // SFINAE-able underlying_type #if TEST_STD_VER > 17 static_assert( has_type_member::value, ""); +#ifdef TEST_UNSIGNED_UNDERLYING_TYPE static_assert( has_type_member::value, ""); +#endif // TEST_UNSIGNED_UNDERLYING_TYPE static_assert( has_type_member::value, ""); static_assert(!has_type_member::value, "");