Previously, we used std::complex in the tests for inclusive_scan_by_segment, exclusive_scan_by_segment, and reduce_by_segment algorithms. The purpose of this was to test with some non-fundamental type. However, std::complex is technically not officially supported in SYCL kernels and failures in these tests over time have reflected the state of std::complex support as opposed to the actual correctness of the by_segment algorithms. We already have explicit tests for current std::complex in our testing suite, so I believe these should be fully separated from our parallel API tests. We also do not use std::complex throughout our other parallel API tests.
I've replaced these tests with tests over a custom 2D point type. Essentially, a similar option is performed as before but no longer depends on std::complex.
Previously, we used
std::complex
in the tests forinclusive_scan_by_segment
,exclusive_scan_by_segment
, andreduce_by_segment
algorithms. The purpose of this was to test with some non-fundamental type. However,std::complex
is technically not officially supported in SYCL kernels and failures in these tests over time have reflected the state ofstd::complex
support as opposed to the actual correctness of the by_segment algorithms. We already have explicit tests for currentstd::complex
in our testing suite, so I believe these should be fully separated from our parallel API tests. We also do not usestd::complex
throughout our other parallel API tests.I've replaced these tests with tests over a custom 2D point type. Essentially, a similar option is performed as before but no longer depends on
std::complex
.