[llvm] 0d6c9f3 - [ArrayRefTest] Use plain array instead of std::array in unit tests.
Florian Hahn via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 30 05:48:06 PDT 2025
Author: Florian Hahn
Date: 2025-04-30T13:47:44+01:00
New Revision: 0d6c9f32735a71812208f92eb640ae88a089a930
URL: https://github.com/llvm/llvm-project/commit/0d6c9f32735a71812208f92eb640ae88a089a930
DIFF: https://github.com/llvm/llvm-project/commit/0d6c9f32735a71812208f92eb640ae88a089a930.diff
LOG: [ArrayRefTest] Use plain array instead of std::array in unit tests.
std::array<> doesn't seem to decay to plain pointers on some MSVC
versions, causing windows build failures after 101fd87f98c9.
Use plain arrays to fix windows builds, including
https://lab.llvm.org/buildbot/#/builders/2/builds/22803
Added:
Modified:
llvm/unittests/ADT/ArrayRefTest.cpp
Removed:
################################################################################
diff --git a/llvm/unittests/ADT/ArrayRefTest.cpp b/llvm/unittests/ADT/ArrayRefTest.cpp
index a9d682c57f7a0..39a4a9b6a178c 100644
--- a/llvm/unittests/ADT/ArrayRefTest.cpp
+++ b/llvm/unittests/ADT/ArrayRefTest.cpp
@@ -291,25 +291,25 @@ static_assert(
"should be able to construct ArrayRef from iterator_range over pointers");
TEST(ArrayRefTest, ArrayRefFromIteratorRange) {
- std::array<int, 5> A1{{42, -5, 0, 1000000, -1000000}};
- ArrayRef<int> A2 = make_range(A1.begin(), A1.end());
+ int A1[] = {42, -5, 0, 1000000, -1000000, 0};
+ ArrayRef<int> A2 = make_range(&A1[0], &A1[5]);
- EXPECT_EQ(A1.size(), A2.size());
- for (std::size_t i = 0; i < A1.size(); ++i)
+ EXPECT_EQ(5ull, A2.size());
+ for (std::size_t i = 0; i < A2.size(); ++i)
EXPECT_EQ(A1[i], A2[i]);
- ArrayRef<const int> A3 = make_range(A1.begin(), A1.end());
- EXPECT_EQ(A1.size(), A3.size());
- for (std::size_t i = 0; i < A1.size(); ++i)
+ ArrayRef<const int> A3 = make_range(&A1[0], &A1[5]);
+ EXPECT_EQ(5ull, A3.size());
+ for (std::size_t i = 0; i < A3.size(); ++i)
EXPECT_EQ(A1[i], A3[i]);
}
TEST(ArrayRefTest, ArrayRefFromIteratorConstRange) {
- std::array<const int, 5> A1{{42, -5, 0, 1000000, -1000000}};
- ArrayRef<const int> A2 = make_range(A1.begin(), A1.end());
+ const int A1[] = {42, -5, 0, 1000000, -1000000, 0};
+ ArrayRef<const int> A2 = make_range(&A1[0], &A1[5]);
- EXPECT_EQ(A1.size(), A2.size());
- for (std::size_t i = 0; i < A1.size(); ++i)
+ EXPECT_EQ(5ull, A2.size());
+ for (std::size_t i = 0; i < A2.size(); ++i)
EXPECT_EQ(A1[i], A2[i]);
}
More information about the llvm-commits
mailing list