aboutsummaryrefslogtreecommitdiff
path: root/llvm/unittests/ADT/ArrayRefTest.cpp
diff options
context:
space:
mode:
authorAaron Ballman <aaron@aaronballman.com>2015-02-17 17:44:07 +0000
committerAaron Ballman <aaron@aaronballman.com>2015-02-17 17:44:07 +0000
commita9614171a72f8ff5716459ad09def85d4f1089e0 (patch)
tree4b9b6048c3bdf343773ee1a1d32426bb736a43b7 /llvm/unittests/ADT/ArrayRefTest.cpp
parentb3b8922cad14d88d7b406e7a7de32b2bc34b9e12 (diff)
downloadllvm-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.cpp8
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]);