Hello List,

[Posting over from the Slack channel which didn't get any attention]:


Any Boost.Compute users here that might be able to help with the following code snippet -


BOOST_COMPUTE_ADAPT_STRUCT(double3, double3, (x, y, z))

BOOST_COMPUTE_FUNCTION(bool, CompareX, (double3 a, double3 b),
{
    return a.x < b.x;
});
boost::compute::vector<double> points;
...
auto it = boost::compute::min_element(points.begin(), points.end(), CompareX, queue);


results in the kernel compilation failure -


--- build log ---
<kernel>:9:3: error: typedef redefinition with different types ('struct double3' vs 'double __attribute__((ext_vector_type(3)))')
} double3;
  ^
cl_kernel.h:154:1: note: previous definition is here
__NV_DECLARE_VECT_TYPES(double,          double)
^
cl_kernel.h:114:61: note: expanded from macro '__NV_DECLARE_VECT_TYPES'
typedef __attribute__(( ext_vector_type(3)  ))        CTYPE CLTYPE##3;  \
                                                            ^
<scratch space>:53:1: note: expanded from here
double3
^
^@


Thanks,
/M