Merge topic 'cuda_err_with_private_class'

4676d07f0 Fix error under CUDA with private class declarations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3165
This commit is contained in:
Mark Bolstad 2023-12-05 17:46:16 +00:00 committed by Kitware Robot
commit 92e7425b8d
2 changed files with 12 additions and 0 deletions

@ -529,7 +529,10 @@ public:
//--------------------------------------------------------------------------
// Reduce
#ifndef VTKM_CUDA
// nvcc doesn't like the private class declaration so disable under CUDA
private:
#endif
template <typename T, typename BinaryFunctor>
class ReduceDecoratorImpl
{

@ -245,7 +245,10 @@ public:
}
//----------------------------------------------------------------------------
#ifndef VTKM_CUDA
// nvcc doesn't like the private class declaration so disable under CUDA
private:
#endif
template <typename ArrayHandle, typename BinaryOperator, typename ResultType>
VTKM_CONT static ResultType ReduceImpl(const ArrayHandle& input,
BinaryOperator binaryOperator,
@ -414,7 +417,10 @@ public:
}
//----------------------------------------------------------------------------
#ifndef VTKM_CUDA
// nvcc doesn't like the private class declaration so disable under CUDA
private:
#endif
// Scan and Reduce have the same conditions
template <typename BinaryOperator, typename ResultType>
using UseKokkosScan = UseKokkosReduce<BinaryOperator, ResultType>;
@ -546,7 +552,10 @@ public:
}
//----------------------------------------------------------------------------
#ifndef VTKM_CUDA
// nvcc doesn't like the private class declaration so disable under CUDA
private:
#endif
template <typename T, typename StorageIn, typename StorageOut, typename BinaryOperator>
VTKM_CONT static T ScanInclusiveImpl(const vtkm::cont::ArrayHandle<T, StorageIn>& input,
vtkm::cont::ArrayHandle<T, StorageOut>& output,