You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[C++][R] macOS 11.3 SDK fails to compile std::span iterator range in vector_sort #50636
auto last_value = GetView::LogicalValue(array.GetView(*range_cur - offset));
while (++range_cur != indices.end()) {
auto v = GetView::LogicalValue(array.GetView(*range_cur - offset));
if (v != last_value) {
visit({range_start, range_cur});
range_start = range_cur;
last_value = v;
}
}
if (range_start != range_cur) {
visit({range_start, range_cur});
}
}
The macOS 11.3 libc++ implementation uses __wrap_iter for span iterators but only accepts raw pointers in this constructor. Using indices.data() for the internal range iteration, or constructing the range with subspan(), would likely retain the span interface and fix the issue.
diff --git a/cpp/src/arrow/compute/kernels/vector_sort.cc b/cpp/src/arrow/compute/kernels/vector_sort.cc
- auto range_start = indices.begin();+ auto range_start = indices.data();
auto range_cur = range_start;
+ const auto range_end = range_start + indices.size();
auto last_value = GetView::LogicalValue(array.GetView(*range_cur - offset));
- while (++range_cur != indices.end()) {+ while (++range_cur != range_end) {
Activity
KHARSHAVARDHAN-eng commentedon Jul 27, 2026
I'd like to work on this issue.
kou commentedon Jul 30, 2026
Issue resolved by pull request 50705
#50705
apacheGH-50636: [C++] Replace std::span/ranges usage to fix macOS CRAN (