diff --git a/Eigen/src/Sparse/SparseTriangularView.h b/Eigen/src/Sparse/SparseTriangularView.h index 319eaf066..dff5ae2c4 100644 --- a/Eigen/src/Sparse/SparseTriangularView.h +++ b/Eigen/src/Sparse/SparseTriangularView.h @@ -48,13 +48,16 @@ template class SparseTriangularView inline Index rows() const { return m_matrix.rows(); } inline Index cols() const { return m_matrix.cols(); } - typedef typename internal::conditional::ret, - MatrixType, const MatrixType&>::type MatrixTypeNested; + //typedef typename internal::conditional::ret, + // MatrixType, const MatrixType&>::type MatrixTypeNested; + typedef typename internal::nested::type MatrixTypeNested; + typedef typename internal::remove_reference::type MatrixTypeNestedNonRef; + typedef typename internal::remove_all::type MatrixTypeNestedCleaned; inline SparseTriangularView(const MatrixType& matrix) : m_matrix(matrix) {} /** \internal */ - inline const MatrixType& nestedExpression() const { return m_matrix; } + inline const MatrixTypeNestedCleaned& nestedExpression() const { return m_matrix; } template typename internal::plain_matrix_type_column_major::type