pitrou opened a new issue, #44898:
URL: https://github.com/apache/arrow/issues/44898

   ### Describe the bug, including details regarding any error messages, 
version, and platform.
   
   It seems https://github.com/apache/arrow/pull/44217 triggered a compilation 
error on GCC 8.x:
   
https://github.com/ursacomputing/crossbow/actions/runs/12081500439/job/33690725970
   
   ```
   
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /arrow/cpp/src/arrow/util/span.h:50:43: error: no matching function for call 
to 'data(const arrow::ChunkResolver&)'
        std::void_t<decltype(span<T>{std::data(std::declval<R>()),
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   In file included from /opt/rh/devtoolset-8/root/usr/include/c++/8/string:51,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/stdexcept:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/array:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/tuple:39,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/unique_ptr.h:37,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/memory:80,
                    from /arrow/cpp/src/arrow/compute/api_vector.h:20,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:18:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:289:5: note: 
candidate: 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(_Container&)'
        data(_Container& __cont) noexcept(noexcept(__cont.data()))
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:289:5: note: 
  template argument deduction/substitution failed:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h: In 
substitution of 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(_Container&) [with _Container = const arrow::ChunkResolver]':
   /arrow/cpp/src/arrow/util/span.h:50:43:   required from 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>'
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:290:24: 
error: 'const class arrow::ChunkResolver' has no member named 'data'
        -> decltype(__cont.data())
                    ~~~~~~~^~~~
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:299:5: note: 
candidate: 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(const _Container&)'
        data(const _Container& __cont) noexcept(noexcept(__cont.data()))
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:299:5: note: 
  template argument deduction/substitution failed:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h: In 
substitution of 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(const _Container&) [with _Container = arrow::ChunkResolver]':
   /arrow/cpp/src/arrow/util/span.h:50:43:   required from 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>'
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:300:24: 
error: 'const class arrow::ChunkResolver' has no member named 'data'
        -> decltype(__cont.data())
                    ~~~~~~~^~~~
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:309:5: note: 
candidate: 'template<class _Tp, long unsigned int _Nm> constexpr _Tp* 
std::data(_Tp (&)[_Nm])'
        data(_Tp (&__array)[_Nm]) noexcept
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:309:5: note: 
  template argument deduction/substitution failed:
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h:50:43: note:   mismatched types '_Tp [_Nm]' 
and 'const arrow::ChunkResolver'
        std::void_t<decltype(span<T>{std::data(std::declval<R>()),
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   In file included from /opt/rh/devtoolset-8/root/usr/include/c++/8/string:51,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/stdexcept:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/array:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/tuple:39,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/unique_ptr.h:37,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/memory:80,
                    from /arrow/cpp/src/arrow/compute/api_vector.h:20,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:18:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:318:5: note: 
candidate: 'template<class _Tp> constexpr const _Tp* 
std::data(std::initializer_list<_Tp>)'
        data(initializer_list<_Tp> __il) noexcept
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:318:5: note: 
  template argument deduction/substitution failed:
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h:50:43: note:   'arrow::ChunkResolver' is 
not derived from 'std::initializer_list<_Tp>'
        std::void_t<decltype(span<T>{std::data(std::declval<R>()),
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   /arrow/cpp/src/arrow/util/span.h:51:43: error: no matching function for call 
to 'size(const arrow::ChunkResolver&)'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   In file included from /opt/rh/devtoolset-8/root/usr/include/c++/8/string:51,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/stdexcept:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/array:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/tuple:39,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/unique_ptr.h:37,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/memory:80,
                    from /arrow/cpp/src/arrow/compute/api_vector.h:20,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:18:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:242:5: note: 
candidate: 'template<class _Container> constexpr decltype (__cont.size()) 
std::size(const _Container&)'
        size(const _Container& __cont) noexcept(noexcept(__cont.size()))
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:242:5: note: 
  template argument deduction/substitution failed:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h: In 
substitution of 'template<class _Container> constexpr decltype (__cont.size()) 
std::size(const _Container&) [with _Container = arrow::ChunkResolver]':
   /arrow/cpp/src/arrow/util/span.h:51:43:   required from 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>'
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:243:24: 
error: 'const class arrow::ChunkResolver' has no member named 'size'
        -> decltype(__cont.size())
                    ~~~~~~~^~~~
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:252:5: note: 
candidate: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t 
std::size(const _Tp (&)[_Nm])'
        size(const _Tp (&/*__array*/)[_Nm]) noexcept
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:252:5: note: 
  template argument deduction/substitution failed:
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h:51:43: note:   mismatched types 'const _Tp 
[_Nm]' and 'const arrow::ChunkResolver'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   /arrow/cpp/src/arrow/util/span.h:51:84: error: no matching function for call 
to 'arrow::util::span<const arrow::Array* const>::span(<brace-enclosed 
initializer list>)'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:91:13: note: candidate: 'template<class R, 
typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<T>::span(R&&)'
      constexpr span(R&& range) : span{std::data(range), std::size(range)} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:91:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:81:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, T*) [with T = const arrow::Array* const]'
      constexpr span(T* begin, T* end)
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:81:13: note:   conversion of argument 1 
would be ill-formed:
   /arrow/cpp/src/arrow/util/span.h:79:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, size_t) [with T = const arrow::Array* const; 
size_t = long unsigned int]'
      constexpr span(T* data, size_t count) : data_{data}, size_{count} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:79:13: note:   conversion of argument 1 
would be ill-formed:
   /arrow/cpp/src/arrow/util/span.h:77:13: note: candidate: 'template<class M, 
class> constexpr arrow::util::span<T>::span(arrow::util::span<M>)'
      constexpr span(span<M> mut) : span{mut.data(), mut.size()} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:77:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:72:3: note: candidate: 'constexpr 
arrow::util::span<T>::span(const arrow::util::span<T>&) [with T = const 
arrow::Array* const]'
      span(const span&) = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:72:3: note:   candidate expects 1 argument, 
2 provided
   /arrow/cpp/src/arrow/util/span.h:71:3: note: candidate: 'constexpr 
arrow::util::span<T>::span() [with T = const arrow::Array* const]'
      span() = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:71:3: note:   candidate expects 0 
arguments, 2 provided
   /arrow/cpp/src/arrow/util/span.h:50:43: error: no matching function for call 
to 'data(const arrow::ChunkResolver&)'
        std::void_t<decltype(span<T>{std::data(std::declval<R>()),
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   In file included from /opt/rh/devtoolset-8/root/usr/include/c++/8/string:51,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/stdexcept:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/array:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/tuple:39,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/unique_ptr.h:37,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/memory:80,
                    from /arrow/cpp/src/arrow/compute/api_vector.h:20,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:18:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:289:5: note: 
candidate: 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(_Container&)'
        data(_Container& __cont) noexcept(noexcept(__cont.data()))
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:289:5: note: 
  template argument deduction/substitution failed:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h: In 
substitution of 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(_Container&) [with _Container = const arrow::ChunkResolver]':
   /arrow/cpp/src/arrow/util/span.h:50:43:   required from 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>'
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:290:24: 
error: 'const class arrow::ChunkResolver' has no member named 'data'
        -> decltype(__cont.data())
                    ~~~~~~~^~~~
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:299:5: note: 
candidate: 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(const _Container&)'
        data(const _Container& __cont) noexcept(noexcept(__cont.data()))
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:299:5: note: 
  template argument deduction/substitution failed:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h: In 
substitution of 'template<class _Container> constexpr decltype (__cont.data()) 
std::data(const _Container&) [with _Container = arrow::ChunkResolver]':
   /arrow/cpp/src/arrow/util/span.h:50:43:   required from 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>'
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:300:24: 
error: 'const class arrow::ChunkResolver' has no member named 'data'
        -> decltype(__cont.data())
                    ~~~~~~~^~~~
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:309:5: note: 
candidate: 'template<class _Tp, long unsigned int _Nm> constexpr _Tp* 
std::data(_Tp (&)[_Nm])'
        data(_Tp (&__array)[_Nm]) noexcept
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:309:5: note: 
  template argument deduction/substitution failed:
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h:50:43: note:   mismatched types '_Tp [_Nm]' 
and 'const arrow::ChunkResolver'
        std::void_t<decltype(span<T>{std::data(std::declval<R>()),
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   In file included from /opt/rh/devtoolset-8/root/usr/include/c++/8/string:51,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/stdexcept:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/array:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/tuple:39,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/unique_ptr.h:37,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/memory:80,
                    from /arrow/cpp/src/arrow/compute/api_vector.h:20,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:18:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:318:5: note: 
candidate: 'template<class _Tp> constexpr const _Tp* 
std::data(std::initializer_list<_Tp>)'
        data(initializer_list<_Tp> __il) noexcept
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:318:5: note: 
  template argument deduction/substitution failed:
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h:50:43: note:   'arrow::ChunkResolver' is 
not derived from 'std::initializer_list<_Tp>'
        std::void_t<decltype(span<T>{std::data(std::declval<R>()),
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   /arrow/cpp/src/arrow/util/span.h:51:43: error: no matching function for call 
to 'size(const arrow::ChunkResolver&)'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   In file included from /opt/rh/devtoolset-8/root/usr/include/c++/8/string:51,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/stdexcept:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/array:39,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/tuple:39,
                    from 
/opt/rh/devtoolset-8/root/usr/include/c++/8/bits/unique_ptr.h:37,
                    from /opt/rh/devtoolset-8/root/usr/include/c++/8/memory:80,
                    from /arrow/cpp/src/arrow/compute/api_vector.h:20,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:18:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:242:5: note: 
candidate: 'template<class _Container> constexpr decltype (__cont.size()) 
std::size(const _Container&)'
        size(const _Container& __cont) noexcept(noexcept(__cont.size()))
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:242:5: note: 
  template argument deduction/substitution failed:
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h: In 
substitution of 'template<class _Container> constexpr decltype (__cont.size()) 
std::size(const _Container&) [with _Container = arrow::ChunkResolver]':
   /arrow/cpp/src/arrow/util/span.h:51:43:   required from 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>'
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:243:24: 
error: 'const class arrow::ChunkResolver' has no member named 'size'
        -> decltype(__cont.size())
                    ~~~~~~~^~~~
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const arrow::ChunkResolver&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const arrow::ChunkResolver&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:106:70:   required 
from here
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:252:5: note: 
candidate: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t 
std::size(const _Tp (&)[_Nm])'
        size(const _Tp (&/*__array*/)[_Nm]) noexcept
        ^~~~
   /opt/rh/devtoolset-8/root/usr/include/c++/8/bits/range_access.h:252:5: note: 
  template argument deduction/substitution failed:
   In file included from /arrow/cpp/src/arrow/buffer.h:33,
                    from /arrow/cpp/src/arrow/array/data.h:28,
                    from /arrow/cpp/src/arrow/array/array_base.h:26,
                    from /arrow/cpp/src/arrow/array/array_nested.h:29,
                    from /arrow/cpp/src/arrow/compute/api_vector.cc:26:
   /arrow/cpp/src/arrow/util/span.h:51:43: note:   mismatched types 'const _Tp 
[_Nm]' and 'const arrow::ChunkResolver'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                     ~~~~~~~~~^~~~~~~~~~~~~~~~~~~
   /arrow/cpp/src/arrow/util/span.h:51:84: error: no matching function for call 
to 'arrow::util::span<const arrow::Array* const>::span(<brace-enclosed 
initializer list>)'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:91:13: note: candidate: 'template<class R, 
typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<T>::span(R&&)'
      constexpr span(R&& range) : span{std::data(range), std::size(range)} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:91:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:81:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, T*) [with T = const arrow::Array* const]'
      constexpr span(T* begin, T* end)
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:81:13: note:   conversion of argument 1 
would be ill-formed:
   /arrow/cpp/src/arrow/util/span.h:79:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, size_t) [with T = const arrow::Array* const; 
size_t = long unsigned int]'
      constexpr span(T* data, size_t count) : data_{data}, size_{count} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:79:13: note:   conversion of argument 1 
would be ill-formed:
   /arrow/cpp/src/arrow/util/span.h:77:13: note: candidate: 'template<class M, 
class> constexpr arrow::util::span<T>::span(arrow::util::span<M>)'
      constexpr span(span<M> mut) : span{mut.data(), mut.size()} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:77:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:72:3: note: candidate: 'constexpr 
arrow::util::span<T>::span(const arrow::util::span<T>&) [with T = const 
arrow::Array* const]'
      span(const span&) = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:72:3: note:   candidate expects 1 argument, 
2 provided
   /arrow/cpp/src/arrow/util/span.h:71:3: note: candidate: 'constexpr 
arrow::util::span<T>::span() [with T = const arrow::Array* const]'
      span() = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:71:3: note:   candidate expects 0 
arguments, 2 provided
   /arrow/cpp/src/arrow/util/span.h: In instantiation of 'struct 
arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const arrow::Array* 
const>, const std::vector<std::shared_ptr<arrow::RecordBatch> >&, void>':
   /arrow/cpp/src/arrow/util/span.h:86:81:   required by substitution of 
'template<class R, typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<const arrow::Array* 
const>::span(R&&) [with R = const 
std::vector<std::shared_ptr<arrow::RecordBatch> >&; typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous> = <missing>; 
DisableUnlessSimilarTypes = <missing>]'
   /arrow/cpp/src/arrow/compute/kernels/chunked_internal.h:139:46:   required 
from here
   /arrow/cpp/src/arrow/util/span.h:51:84: error: no matching function for call 
to 'arrow::util::span<const arrow::Array* const>::span(<brace-enclosed 
initializer list>)'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:91:13: note: candidate: 'template<class R, 
typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<T>::span(R&&)'
      constexpr span(R&& range) : span{std::data(range), std::size(range)} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:91:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:51:84: note:   candidate expects 1 
argument, 2 provided
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:81:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, T*) [with T = const arrow::Array* const]'
      constexpr span(T* begin, T* end)
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:81:13: note:   no known conversion for 
argument 1 from 'const std::shared_ptr<arrow::RecordBatch>*' to 'const 
arrow::Array* const*'
   /arrow/cpp/src/arrow/util/span.h:79:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, size_t) [with T = const arrow::Array* const; 
size_t = long unsigned int]'
      constexpr span(T* data, size_t count) : data_{data}, size_{count} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:79:13: note:   no known conversion for 
argument 1 from 'const std::shared_ptr<arrow::RecordBatch>*' to 'const 
arrow::Array* const*'
   /arrow/cpp/src/arrow/util/span.h:77:13: note: candidate: 'template<class M, 
class> constexpr arrow::util::span<T>::span(arrow::util::span<M>)'
      constexpr span(span<M> mut) : span{mut.data(), mut.size()} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:77:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:51:84: note:   mismatched types 
'arrow::util::span<T>' and 'const std::shared_ptr<arrow::RecordBatch>*'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:72:3: note: candidate: 'constexpr 
arrow::util::span<T>::span(const arrow::util::span<T>&) [with T = const 
arrow::Array* const]'
      span(const span&) = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:72:3: note:   candidate expects 1 argument, 
2 provided
   /arrow/cpp/src/arrow/util/span.h:71:3: note: candidate: 'constexpr 
arrow::util::span<T>::span() [with T = const arrow::Array* const]'
      span() = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:71:3: note:   candidate expects 0 
arguments, 2 provided
   /arrow/cpp/src/arrow/util/span.h:51:84: error: no matching function for call 
to 'arrow::util::span<const arrow::Array* const>::span(<brace-enclosed 
initializer list>)'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:91:13: note: candidate: 'template<class R, 
typename 
std::enable_if<arrow::util::ConstructibleFromDataAndSize<arrow::util::span<const
 arrow::Array* const>, R, void>::value, bool>::type <anonymous>, class 
DisableUnlessSimilarTypes> constexpr arrow::util::span<T>::span(R&&)'
      constexpr span(R&& range) : span{std::data(range), std::size(range)} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:91:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:51:84: note:   candidate expects 1 
argument, 2 provided
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:81:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, T*) [with T = const arrow::Array* const]'
      constexpr span(T* begin, T* end)
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:81:13: note:   no known conversion for 
argument 1 from 'const std::shared_ptr<arrow::RecordBatch>*' to 'const 
arrow::Array* const*'
   /arrow/cpp/src/arrow/util/span.h:79:13: note: candidate: 'constexpr 
arrow::util::span<T>::span(T*, size_t) [with T = const arrow::Array* const; 
size_t = long unsigned int]'
      constexpr span(T* data, size_t count) : data_{data}, size_{count} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:79:13: note:   no known conversion for 
argument 1 from 'const std::shared_ptr<arrow::RecordBatch>*' to 'const 
arrow::Array* const*'
   /arrow/cpp/src/arrow/util/span.h:77:13: note: candidate: 'template<class M, 
class> constexpr arrow::util::span<T>::span(arrow::util::span<M>)'
      constexpr span(span<M> mut) : span{mut.data(), mut.size()} {}
                ^~~~
   /arrow/cpp/src/arrow/util/span.h:77:13: note:   template argument 
deduction/substitution failed:
   /arrow/cpp/src/arrow/util/span.h:51:84: note:   mismatched types 
'arrow::util::span<T>' and 'const std::shared_ptr<arrow::RecordBatch>*'
                                     std::size(std::declval<R>())})>> : 
std::true_type {};
                                                                                
       ^
   /arrow/cpp/src/arrow/util/span.h:72:3: note: candidate: 'constexpr 
arrow::util::span<T>::span(const arrow::util::span<T>&) [with T = const 
arrow::Array* const]'
      span(const span&) = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:72:3: note:   candidate expects 1 argument, 
2 provided
   /arrow/cpp/src/arrow/util/span.h:71:3: note: candidate: 'constexpr 
arrow::util::span<T>::span() [with T = const arrow::Array* const]'
      span() = default;
      ^~~~
   /arrow/cpp/src/arrow/util/span.h:71:3: note:   candidate expects 0 
arguments, 2 provided
   ```
   
   ### Component(s)
   
   C++


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to