diff options
author | Gael Guennebaud <g.gael@free.fr> | 2016-11-14 14:05:53 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2016-11-14 14:05:53 +0100 |
commit | eedb87f4ba7fa835808168952f70acac6e458452 (patch) | |
tree | 3617d5793477f22da631648aaae2c5a6074ad4ab /Eigen | |
parent | f4722aa47991823d2f002e57ce45850790ea86b9 (diff) |
Fix regression in SparseMatrix::ReverseInnerIterator
Diffstat (limited to 'Eigen')
-rw-r--r-- | Eigen/src/SparseCore/SparseCompressedBase.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Eigen/src/SparseCore/SparseCompressedBase.h b/Eigen/src/SparseCore/SparseCompressedBase.h index 55ad91f46..febd9039e 100644 --- a/Eigen/src/SparseCore/SparseCompressedBase.h +++ b/Eigen/src/SparseCore/SparseCompressedBase.h @@ -224,11 +224,11 @@ class SparseCompressedBase<Derived>::ReverseInnerIterator } else { - m_start.value() = mat.outerIndexPtr()[outer]; + m_start = mat.outerIndexPtr()[outer]; if(mat.isCompressed()) m_id = mat.outerIndexPtr()[outer+1]; else - m_id = m_start.value() + mat.innerNonZeroPtr()[outer]; + m_id = m_start + mat.innerNonZeroPtr()[outer]; } } @@ -254,14 +254,15 @@ class SparseCompressedBase<Derived>::ReverseInnerIterator inline Index row() const { return IsRowMajor ? m_outer.value() : index(); } inline Index col() const { return IsRowMajor ? index() : m_outer.value(); } - inline operator bool() const { return (m_id > m_start.value()); } + inline operator bool() const { return (m_id > m_start); } protected: const Scalar* m_values; const StorageIndex* m_indices; - const internal::variable_if_dynamic<Index,Derived::IsVectorAtCompileTime?0:Dynamic> m_outer; + typedef internal::variable_if_dynamic<Index,Derived::IsVectorAtCompileTime?0:Dynamic> OuterType; + const OuterType m_outer; Index m_id; - const internal::variable_if_dynamic<Index,Derived::IsVectorAtCompileTime?0:Dynamic> m_start; + Index m_start; }; namespace internal { |