diff options
-rw-r--r-- | Eigen/src/SparseCore/SparseAssign.h | 1 | ||||
-rw-r--r-- | test/sparse_basic.cpp | 4 |
2 files changed, 5 insertions, 0 deletions
diff --git a/Eigen/src/SparseCore/SparseAssign.h b/Eigen/src/SparseCore/SparseAssign.h index c5589492e..4a8dd12e4 100644 --- a/Eigen/src/SparseCore/SparseAssign.h +++ b/Eigen/src/SparseCore/SparseAssign.h @@ -64,6 +64,7 @@ struct Sparse2Dense {}; template<> struct AssignmentKind<SparseShape, SparseShape> { typedef Sparse2Sparse Kind; }; template<> struct AssignmentKind<SparseShape, SparseTriangularShape> { typedef Sparse2Sparse Kind; }; template<> struct AssignmentKind<DenseShape, SparseShape> { typedef Sparse2Dense Kind; }; +template<> struct AssignmentKind<DenseShape, SparseTriangularShape> { typedef Sparse2Dense Kind; }; template<typename DstXprType, typename SrcXprType> diff --git a/test/sparse_basic.cpp b/test/sparse_basic.cpp index d8e42e984..0c7d2c652 100644 --- a/test/sparse_basic.cpp +++ b/test/sparse_basic.cpp @@ -338,6 +338,10 @@ template<typename SparseMatrixType> void sparse_basic(const SparseMatrixType& re refMat3 = refMat2.template triangularView<StrictlyLower>(); m3 = m2.template triangularView<StrictlyLower>(); VERIFY_IS_APPROX(m3, refMat3); + + // check sparse-traingular to dense + refMat3 = m2.template triangularView<StrictlyUpper>(); + VERIFY_IS_APPROX(refMat3, DenseMatrix(refMat2.template triangularView<StrictlyUpper>())); } // test selfadjointView |