From 082a93a6757b6af55c07e57e6be555e2a376cfdf Mon Sep 17 00:00:00 2001 From: Andrew Dowsey Date: Mon, 8 Dec 2014 21:00:57 +0000 Subject: [PATCH] patched Eigen 3.2.2 for compile problem on VS2010 --- eigen-3.2.2/Eigen/src/SparseCore/SparseDenseProduct.h | 4 ++-- eigen-3.2.2/Eigen/src/SparseCore/SparseMatrixBase.h | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/eigen-3.2.2/Eigen/src/SparseCore/SparseDenseProduct.h b/eigen-3.2.2/Eigen/src/SparseCore/SparseDenseProduct.h index 78411db98..05ef30ec9 100644 --- a/eigen-3.2.2/Eigen/src/SparseCore/SparseDenseProduct.h +++ b/eigen-3.2.2/Eigen/src/SparseCore/SparseDenseProduct.h @@ -306,14 +306,14 @@ class DenseTimeSparseProduct DenseTimeSparseProduct& operator=(const DenseTimeSparseProduct&); }; -// sparse * dense +/*// sparse * dense template template inline const typename SparseDenseProductReturnType::Type SparseMatrixBase::operator*(const MatrixBase &other) const { return typename SparseDenseProductReturnType::Type(derived(), other.derived()); -} +}*/ } // end namespace Eigen diff --git a/eigen-3.2.2/Eigen/src/SparseCore/SparseMatrixBase.h b/eigen-3.2.2/Eigen/src/SparseCore/SparseMatrixBase.h index bbcf7fb1c..9ae057e91 100644 --- a/eigen-3.2.2/Eigen/src/SparseCore/SparseMatrixBase.h +++ b/eigen-3.2.2/Eigen/src/SparseCore/SparseMatrixBase.h @@ -358,8 +358,10 @@ template class SparseMatrixBase : public EigenBase /** sparse * dense (returns a dense object unless it is an outer product) */ template const typename SparseDenseProductReturnType::Type - operator*(const MatrixBase &other) const; - + //operator*(const MatrixBase &other) const; + operator*(const MatrixBase &other) const + { return typename SparseDenseProductReturnType::Type(derived(), other.derived()); } + /** \returns an expression of P H P^-1 where H is the matrix represented by \c *this */ SparseSymmetricPermutationProduct twistedBy(const PermutationMatrix& perm) const {