Skip to content

Commit 36f146e

Browse files
committed
Fix iterator and C++17 issues
Co-authored-by:JohanMabille
1 parent 7cd2d4a commit 36f146e

1 file changed

Lines changed: 7 additions & 15 deletions

File tree

include/xtensor/xsort.hpp

Lines changed: 7 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ namespace xt
8282

8383
const auto begin = ev.data();
8484
const auto end = begin + n_iters * secondary_stride;
85-
for (auto iter = begin; iter < end; iter += secondary_stride)
85+
for (auto iter = begin; iter != end; iter += secondary_stride)
8686
{
8787
fct(iter, iter + secondary_stride);
8888
}
@@ -105,7 +105,7 @@ namespace xt
105105
const auto end2 = begin2 + n_iters * secondary_stride2;
106106
auto iter1 = begin1;
107107
auto iter2 = begin2;
108-
for (; (iter1 < end1) && (iter2 < end2); iter1 += secondary_stride1, iter2 += secondary_stride2)
108+
for (; (iter1 != end1) && (iter2 != end2); iter1 += secondary_stride1, iter2 += secondary_stride2)
109109
{
110110
fct(iter1, iter1 + secondary_stride1, iter2, iter2 + secondary_stride2);
111111
}
@@ -269,16 +269,12 @@ namespace xt
269269
namespace detail
270270
{
271271
template <class ConstRandomIt, class RandomIt, class Compare>
272-
inline void argsort_iter(
273-
ConstRandomIt data_begin,
274-
ConstRandomIt data_end,
275-
RandomIt idx_begin,
276-
[[maybe_unused]] RandomIt idx_end,
277-
Compare comp
278-
)
272+
inline void
273+
argsort_iter(ConstRandomIt data_begin, ConstRandomIt data_end, RandomIt idx_begin, RandomIt idx_end, Compare comp)
279274
{
280275
XTENSOR_ASSERT(std::distance(data_begin, data_end) >= 0);
281276
XTENSOR_ASSERT(std::distance(idx_begin, idx_end) == std::distance(data_begin, data_end));
277+
(void) idx_end; // TODO(C++17) [[maybe_unused]] only used in assertion.
282278

283279
std::iota(idx_begin, idx_end, 0);
284280
std::sort(
@@ -292,12 +288,8 @@ namespace xt
292288
}
293289

294290
template <class ConstRandomIt, class RandomIt>
295-
inline void argsort_iter(
296-
ConstRandomIt data_begin,
297-
ConstRandomIt data_end,
298-
RandomIt idx_begin,
299-
[[maybe_unused]] RandomIt idx_end
300-
)
291+
inline void
292+
argsort_iter(ConstRandomIt data_begin, ConstRandomIt data_end, RandomIt idx_begin, RandomIt idx_end)
301293
{
302294
return argsort_iter(
303295
std::move(data_begin),

0 commit comments

Comments
 (0)