This repository has been archived by the owner on Mar 21, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 757
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update scan accum / binary_op edgecase handling.
TBB's scan was implemented differently than the other backends, leading to some failing unit tests. This patch fixes these inconsistencies by making the following changes: - Follow P0571's guidance regarding accumulator variable type. - https://wg21.link/P0571 - The accumulator's type is now: - The type of the user-supplied initial value (if provided), or - The input iterator's value type if no initial value. - Follow C++ standard guidance for default binary operator type. - https://eel.is/c++draft/exclusive.scan#1 - Thrust binary/unary functors now specialize a default void template parameter. Types are deduced and forwarded transparently. - Updated the scan's default binary operator to the new `thrust::plus<>` specialization. - The `intermediate_type_from_function_and_iterators` helper is no longer needed and has been removed. Closes #1170.
- Loading branch information
1 parent
e478243
commit b528451
Showing
11 changed files
with
335 additions
and
363 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
61 changes: 0 additions & 61 deletions
61
thrust/detail/type_traits/algorithm/intermediate_type_from_function_and_iterators.h
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.