-
Notifications
You must be signed in to change notification settings - Fork 116
Open
Labels
Description
[__value](auto&& __a) { return std::ranges::equal_to{}(__a, __value);}, __proj); |
namespace __internal
{
struct __remove_fn
{
template<typename _ExecutionPolicy, std::ranges::random_access_range _R, typename _Proj = std::identity,
typename _T = oneapi::dpl::projected_value_t<std::ranges::iterator_t<_R>, _Proj>>
requires oneapi::dpl::is_execution_policy_v<std::remove_cvref_t<_ExecutionPolicy>>
&& std::permutable<std::ranges::iterator_t<_R>> && std::indirect_binary_predicate<std::ranges::equal_to,
std::projected<std::ranges::iterator_t<_R>, _Proj>, const _T*> && std::ranges::sized_range<_R>
std::ranges::borrowed_subrange_t<_R>
operator()(_ExecutionPolicy&& __exec, _R&& __r, const _T& __value, _Proj __proj = {}) const
{
return oneapi::dpl::ranges::remove_if(std::forward<_ExecutionPolicy>(__exec), std::forward<_R>(__r),
[__value](auto&& __a) { return std::ranges::equal_to{}(__a, __value);}, __proj);
}
}; //__remove_fn
} //__internal
This mean we have one instance for each value category of __exec
-> potential error in unique Kernel names.
Probably you introduce more then one place like that, please re-check.
It was introduced in the PR #2100