diff options
author | 2015-09-03 15:07:35 +0200 | |
---|---|---|
committer | 2015-09-03 15:07:35 +0200 | |
commit | ed265258e4023f25c8e058fae3fba127abf51edf (patch) | |
tree | b6898c4bdbc98ebc8716519b774887f2048b2b8e | |
parent | a835dfca73a3fd00bf5ad4108f7c633f67414384 (diff) |
Fix returned index type of inner iterators of sparse blocks.
-rw-r--r-- | Eigen/src/SparseCore/SparseBlock.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Eigen/src/SparseCore/SparseBlock.h b/Eigen/src/SparseCore/SparseBlock.h index 7df99eca4..9afb5327e 100644 --- a/Eigen/src/SparseCore/SparseBlock.h +++ b/Eigen/src/SparseCore/SparseBlock.h @@ -477,7 +477,7 @@ public: EvalIterator::operator++();
}
- inline Index index() const { return EvalIterator::index() - (IsRowMajor ? m_block.startCol() : m_block.startRow()); }
+ inline StorageIndex index() const { return EvalIterator::index() - convert_index<StorageIndex>(IsRowMajor ? m_block.startCol() : m_block.startRow()); }
inline Index outer() const { return EvalIterator::outer() - (IsRowMajor ? m_block.startRow() : m_block.startCol()); }
inline Index row() const { return EvalIterator::row() - m_block.startRow(); }
inline Index col() const { return EvalIterator::col() - m_block.startCol(); }
@@ -508,7 +508,7 @@ public: ++(*this);
}
- inline Index index() const { return m_outerPos - (IsRowMajor ? m_eval.m_block.startCol() : m_eval.m_block.startRow()); }
+ inline StorageIndex index() const { return convert_index<StorageIndex>(m_outerPos - (IsRowMajor ? m_eval.m_block.startCol() : m_eval.m_block.startRow())); }
inline Index outer() const { return 0; }
inline Index row() const { return IsRowMajor ? 0 : index(); }
inline Index col() const { return IsRowMajor ? index() : 0; }
|