Adding additional tests to ensure that initializer lists created from return values...
authorAaron Ballman <aaron@aaronballman.com>
Tue, 17 Feb 2015 17:08:08 +0000 (17:08 +0000)
committerAaron Ballman <aaron@aaronballman.com>
Tue, 17 Feb 2015 17:08:08 +0000 (17:08 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@229513 91177308-0d34-0410-b5e6-96231b3b80d8

unittests/ADT/ArrayRefTest.cpp

index 4d77c478f481ff7791a3d4391090a590376d64d4..5912c05b13d1fb3c6a3a64b2b8a2eec4d061cffd 100644 (file)
@@ -90,10 +90,23 @@ TEST(ArrayRefTest, ConstConvert) {
   a = ArrayRef<int *>(A);
 }
 
+static ArrayRef<int> ReturnTest12() { return {1, 2}; }
+static void ArgTest12(ArrayRef<int> A) {
+  EXPECT_EQ(2, A.size());
+  EXPECT_EQ(1, A[0]);
+  EXPECT_EQ(2, A[1]);
+}
+
 TEST(ArrayRefTest, InitializerList) {
   ArrayRef<int> A = { 0, 1, 2, 3, 4 };
   for (int i = 0; i < 5; ++i)
     EXPECT_EQ(i, A[i]);
+
+  A = ReturnTest12();
+  EXPECT_EQ(1, A[0]);
+  EXPECT_EQ(2, A[1]);
+
+  ArgTest12({1, 2});
 }
 
 } // end anonymous namespace