diff options
author | Stephan T. Lavavej <stl@exchange.microsoft.com> | 2016-12-14 22:46:46 +0000 |
---|---|---|
committer | Stephan T. Lavavej <stl@exchange.microsoft.com> | 2016-12-14 22:46:46 +0000 |
commit | 286adee501ef95240fb926d170dd287887976d01 (patch) | |
tree | 46ef0f25b6ec2c38f1b80c7f97839841beb6def0 /libcxx/test/std | |
parent | 7608626631b0c7ef840449d2888d73d705d382d3 (diff) | |
download | bcm5719-llvm-286adee501ef95240fb926d170dd287887976d01.tar.gz bcm5719-llvm-286adee501ef95240fb926d170dd287887976d01.zip |
[libcxx] [test] Fix MSVC x64 truncation warnings with 32-bit allocator size_type/difference_type.
test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp
test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp
Iterate with C::size_type because that's what operator[] takes.
test/std/containers/sequences/vector/contiguous.pass.cpp
test/std/strings/basic.string/string.require/contiguous.pass.cpp
Add static_cast<typename C::difference_type> because that's what the iterator's operator+ takes.
Fixes D27777.
llvm-svn: 289734
Diffstat (limited to 'libcxx/test/std')
4 files changed, 4 insertions, 4 deletions
diff --git a/libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp b/libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp index 602a8581f57..e4fff91f07c 100644 --- a/libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp +++ b/libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp @@ -50,7 +50,7 @@ int main() test q(d, test_allocator<int>(4)); assert(q.get_allocator() == test_allocator<int>(4)); assert(q.size() == 5); - for (std::size_t i = 0; i < d.size(); ++i) + for (C::size_type i = 0; i < d.size(); ++i) { assert(q.front() == d[i]); q.pop(); diff --git a/libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp b/libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp index cc9937a8a6c..b3cf3920720 100644 --- a/libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp +++ b/libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp @@ -50,7 +50,7 @@ int main() test q(d, test_allocator<int>(4)); assert(q.get_allocator() == test_allocator<int>(4)); assert(q.size() == 5); - for (std::size_t i = 0; i < d.size(); ++i) + for (C::size_type i = 0; i < d.size(); ++i) { assert(q.top() == d[d.size() - i - 1]); q.pop(); diff --git a/libcxx/test/std/containers/sequences/vector/contiguous.pass.cpp b/libcxx/test/std/containers/sequences/vector/contiguous.pass.cpp index 70084246eae..9dfcf7a63e4 100644 --- a/libcxx/test/std/containers/sequences/vector/contiguous.pass.cpp +++ b/libcxx/test/std/containers/sequences/vector/contiguous.pass.cpp @@ -21,7 +21,7 @@ template <class C> void test_contiguous ( const C &c ) { for ( size_t i = 0; i < c.size(); ++i ) - assert ( *(c.begin() + i) == *(std::addressof(*c.begin()) + i)); + assert ( *(c.begin() + static_cast<typename C::difference_type>(i)) == *(std::addressof(*c.begin()) + i)); } int main() diff --git a/libcxx/test/std/strings/basic.string/string.require/contiguous.pass.cpp b/libcxx/test/std/strings/basic.string/string.require/contiguous.pass.cpp index 49773fe491a..1cc8e96e8cd 100644 --- a/libcxx/test/std/strings/basic.string/string.require/contiguous.pass.cpp +++ b/libcxx/test/std/strings/basic.string/string.require/contiguous.pass.cpp @@ -22,7 +22,7 @@ template <class C> void test_contiguous ( const C &c ) { for ( size_t i = 0; i < c.size(); ++i ) - assert ( *(c.begin() + i) == *(std::addressof(*c.begin()) + i)); + assert ( *(c.begin() + static_cast<typename C::difference_type>(i)) == *(std::addressof(*c.begin()) + i)); } int main() |