diff --git a/Eigen/src/SparseCore/SparseBlock.h b/Eigen/src/SparseCore/SparseBlock.h index 0692eeb1a..9a66a94fb 100644 --- a/Eigen/src/SparseCore/SparseBlock.h +++ b/Eigen/src/SparseCore/SparseBlock.h @@ -524,12 +524,14 @@ namespace internal { template class GenericSparseBlockInnerIteratorImpl : public internal::remove_all::type::InnerIterator { + public: typedef Block BlockType; enum { IsRowMajor = BlockType::IsRowMajor }; - typedef typename internal::remove_all::type _MatrixTypeNested; typedef typename BlockType::Index Index; + protected: + typedef typename internal::remove_all::type _MatrixTypeNested; typedef typename _MatrixTypeNested::InnerIterator Base; const BlockType& m_block; Index m_end; @@ -556,13 +558,15 @@ namespace internal { template class GenericSparseBlockInnerIteratorImpl { + public: typedef Block BlockType; enum { IsRowMajor = BlockType::IsRowMajor }; - typedef typename internal::remove_all::type _MatrixTypeNested; typedef typename BlockType::Index Index; typedef typename BlockType::Scalar Scalar; + protected: + typedef typename internal::remove_all::type _MatrixTypeNested; const BlockType& m_block; Index m_outerPos; Index m_innerIndex;