Any chance to deprecate the header as well and redirect to a new header with appropriate prefix?
Would you be willing to move the traits definition to a new <KokkosKernels_ArithTraits.hpp>
header and have < Kokkos_ArithTraits.hpp >
just include it along with a using directive in the Kokkos:: namespace.
We’ll need to fix Trilinos for these changes, e.g.
In file included from /root/Trilinos/packages/stokhos/src/sacado/kokkos/vector/tpetra/Stokhos_Tpetra_MP_Vector.hpp:29:
/root/Trilinos/packages/stokhos/src/sacado/kokkos/vector/linalg/Kokkos_ArithTraits_MP_Vector.hpp:24:7: error: cannot specialize a dependent template
24 | class ArithTraits< Sacado::MP::Vector<S> > {
@lucbv just to check, these changes only apply to versions >= 5.0 ? (So I know how to guard in Trilinos)
I suppose you could do “`C++ #if __has_include(KokkosKernels_ArithTraits.hpp) // since 5.0
Yes this would only apply to versions of Kokkos >= 5.0 so for a 4.7.2 release we would not want this change.
Outdated (unsupported compilers)
Note that https://github.com/kokkos/kokkos-kernels/pull/2771 introduced a new header with the Kokkos 4 header and that is not handled in the current version of this PR
Good point, I’ll fix the header for KokkosKernels_ArithTraits