diff --git a/Eigen/src/Sparse/SparseProduct.h b/Eigen/src/Sparse/SparseProduct.h index 06ea703f8..ec4961d9b 100644 --- a/Eigen/src/Sparse/SparseProduct.h +++ b/Eigen/src/Sparse/SparseProduct.h @@ -313,6 +313,7 @@ template Derived& MatrixBase::lazyAssign(const SparseProduct& product) { typedef typename ei_cleantype::type _Lhs; + typedef typename ei_cleantype::type _Rhs; typedef typename _Lhs::InnerIterator LhsInnerIterator; enum { LhsIsRowMajor = (_Lhs::Flags&RowMajorBit)==RowMajorBit, @@ -332,6 +333,7 @@ Derived& MatrixBase::lazyAssign(const SparseProduct foo = derived().row(j); for (; (ProcessFirstHalf ? i && i.index() < j : i) ; ++i) { if (LhsIsSelfAdjoint) @@ -342,8 +344,10 @@ Derived& MatrixBase::lazyAssign(const SparseProduct void sparse_vector(int rows, int cols) for (unsigned int i=0; i