diff --git a/Eigen/src/SparseCore/SparseAssign.h b/Eigen/src/SparseCore/SparseAssign.h index c939f6c92..1ce60f385 100644 --- a/Eigen/src/SparseCore/SparseAssign.h +++ b/Eigen/src/SparseCore/SparseAssign.h @@ -136,8 +136,8 @@ struct Assignment }; // Sparse to Dense assignment -template< typename DstXprType, typename SrcXprType, typename Functor> -struct Assignment +template< typename DstXprType, typename SrcXprType, typename Functor, typename Scalar> +struct Assignment { static void run(DstXprType &dst, const SrcXprType &src, const Functor &func) { @@ -152,8 +152,8 @@ struct Assignment } }; -template< typename DstXprType, typename SrcXprType> -struct Assignment, Sparse2Dense> +template< typename DstXprType, typename SrcXprType, typename Scalar> +struct Assignment, Sparse2Dense, Scalar> { static void run(DstXprType &dst, const SrcXprType &src, const internal::assign_op &) { @@ -172,7 +172,7 @@ struct Assignment -struct Assignment, internal::assign_op, Sparse2Sparse> +struct Assignment, internal::assign_op, Sparse2Sparse, Scalar> { typedef Solve SrcXprType; static void run(DstXprType &dst, const SrcXprType &src, const internal::assign_op &)