Skip to content

Commit 2dcafd4

Browse files
committed
!fixup address latest comments, thanks!
1 parent 85b5450 commit 2dcafd4

File tree

2 files changed

+11
-12
lines changed

2 files changed

+11
-12
lines changed

llvm/include/llvm/ADT/ArrayRef.h

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -152,14 +152,15 @@ namespace llvm {
152152
/// Construct an ArrayRef<T> from iterator_range<U*>. This uses SFINAE
153153
/// to ensure that this is only used for iterator ranges of random access
154154
/// iterators that can be converted.
155-
template <typename U>
156-
ArrayRef(const iterator_range<U *> &Range,
157-
std::enable_if_t<std::is_base_of<std::random_access_iterator_tag,
158-
typename std::iterator_traits<
159-
decltype(Range.begin())>::
160-
iterator_category>::value &&
161-
std::is_convertible<U *, T const *>::value,
162-
void> * = nullptr)
155+
template <typename U,
156+
typename = std::enable_if_t<
157+
std::is_base_of<
158+
std::random_access_iterator_tag,
159+
typename std::iterator_traits<
160+
decltype(std::declval<const iterator_range<U *> &>()
161+
.begin())>::iterator_category>::value &&
162+
std::is_convertible_v<U *, T const *>>>
163+
ArrayRef(const iterator_range<U *> &Range)
163164
: Data(Range.begin()), Length(llvm::size(Range)) {}
164165

165166
/// @}

llvm/unittests/ADT/ArrayRefTest.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -260,19 +260,17 @@ TEST(ArrayRefTest, ArrayRefFromIteratorRange) {
260260
ArrayRef<int> A2 = make_range(A1.begin(), A1.end());
261261

262262
EXPECT_EQ(A1.size(), A2.size());
263-
for (std::size_t i = 0; i < A1.size(); ++i) {
263+
for (std::size_t i = 0; i < A1.size(); ++i)
264264
EXPECT_EQ(A1[i], A2[i]);
265-
}
266265
}
267266

268267
TEST(ArrayRefTest, ArrayRefFromIteratorConstRange) {
269268
std::array<const int, 5> A1{{42, -5, 0, 1000000, -1000000}};
270269
ArrayRef<const int> A2 = make_range(A1.begin(), A1.end());
271270

272271
EXPECT_EQ(A1.size(), A2.size());
273-
for (std::size_t i = 0; i < A1.size(); ++i) {
272+
for (std::size_t i = 0; i < A1.size(); ++i)
274273
EXPECT_EQ(A1[i], A2[i]);
275-
}
276274
}
277275

278276
static_assert(std::is_trivially_copyable_v<ArrayRef<int>>,

0 commit comments

Comments
 (0)