diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2015-02-17 17:44:07 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2015-02-17 17:44:07 +0000 |
commit | a9614171a72f8ff5716459ad09def85d4f1089e0 (patch) | |
tree | 4b9b6048c3bdf343773ee1a1d32426bb736a43b7 /llvm/unittests/ADT/ArrayRefTest.cpp | |
parent | b3b8922cad14d88d7b406e7a7de32b2bc34b9e12 (diff) | |
download | llvm-a9614171a72f8ff5716459ad09def85d4f1089e0.zip llvm-a9614171a72f8ff5716459ad09def85d4f1089e0.tar.gz llvm-a9614171a72f8ff5716459ad09def85d4f1089e0.tar.bz2 |
Correcting the ArrayRef test to not cause use-after-free bugs with initializer lists. Should also silence a -Wsign-compare warning accidentally introduced.
llvm-svn: 229515
Diffstat (limited to 'llvm/unittests/ADT/ArrayRefTest.cpp')
-rw-r--r-- | llvm/unittests/ADT/ArrayRefTest.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/llvm/unittests/ADT/ArrayRefTest.cpp b/llvm/unittests/ADT/ArrayRefTest.cpp index 5912c05..70f8208 100644 --- a/llvm/unittests/ADT/ArrayRefTest.cpp +++ b/llvm/unittests/ADT/ArrayRefTest.cpp @@ -11,6 +11,7 @@ #include "llvm/Support/Allocator.h" #include "llvm/Support/raw_ostream.h" #include "gtest/gtest.h" +#include <vector> using namespace llvm; // Check that the ArrayRef-of-pointer converting constructor only allows adding @@ -90,9 +91,9 @@ TEST(ArrayRefTest, ConstConvert) { a = ArrayRef<int *>(A); } -static ArrayRef<int> ReturnTest12() { return {1, 2}; } +static std::vector<int> ReturnTest12() { return {1, 2}; } static void ArgTest12(ArrayRef<int> A) { - EXPECT_EQ(2, A.size()); + EXPECT_EQ(2U, A.size()); EXPECT_EQ(1, A[0]); EXPECT_EQ(2, A[1]); } @@ -102,7 +103,8 @@ TEST(ArrayRefTest, InitializerList) { for (int i = 0; i < 5; ++i) EXPECT_EQ(i, A[i]); - A = ReturnTest12(); + std::vector<int> B = ReturnTest12(); + A = B; EXPECT_EQ(1, A[0]); EXPECT_EQ(2, A[1]); |