diff --git a/test/parallel_api/iterator/permutation_iterator.h b/test/parallel_api/iterator/permutation_iterator.h index e257d76ad65..62e3f2822bf 100644 --- a/test/parallel_api/iterator/permutation_iterator.h +++ b/test/parallel_api/iterator/permutation_iterator.h @@ -197,22 +197,22 @@ struct test_through_permutation_iterator::value_type; + + // Using callable object instead of lambda here to ensure transform iterator would be + // default constructible, that is part of the Forward Iterator requirements in the C++ standard. + struct NoTransform + { + ValueType operator()(const ValueType& val) const + { + return val; + } + }; + template void operator()(Operand op) { - using ValueType = typename ::std::iterator_traits::value_type; - - // Using callable object instead of lambda here to ensure transform iterator would be - // default constructible, that is part of the Forward Iterator requirements in the C++ standard. - struct NoTransform - { - ValueType operator()(const ValueType& val) const - { - return val; - } - }; - auto indexes_begin = dpl::counting_iterator(0); auto itTransformBegin = dpl::make_transform_iterator(indexes_begin, NoTransform{}); auto permItBegin = dpl::make_permutation_iterator(data.itSource, itTransformBegin);