Inherit from no_assignment_operator to avoid implicit copy constructor warnings

(cherry picked from commit 9bbb7ea4b54b1f307863be4ed8d105c38cdefe50)
This commit is contained in:
Christoph Hertzberg 2021-02-27 18:25:48 +01:00
parent a3521d743c
commit 2660d01fa7

View File

@ -362,7 +362,7 @@ class TensorContractionOp : public TensorBase<TensorContractionOp<Indices, LhsXp
template<typename Derived> template<typename Derived>
struct TensorContractionEvaluatorBase struct TensorContractionEvaluatorBase : internal::no_assignment_operator
{ {
typedef typename internal::traits<Derived>::Indices Indices; typedef typename internal::traits<Derived>::Indices Indices;
typedef typename internal::traits<Derived>::LeftArgType LeftArgType; typedef typename internal::traits<Derived>::LeftArgType LeftArgType;
@ -934,8 +934,6 @@ struct TensorContractionEvaluatorBase
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EvaluatorPointerType data() const { return m_result; } EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EvaluatorPointerType data() const { return m_result; }
protected: protected:
// Prevent assignment
TensorContractionEvaluatorBase& operator = (const TensorContractionEvaluatorBase&);
Dimensions m_dimensions; Dimensions m_dimensions;
contract_t m_k_strides; contract_t m_k_strides;