# HG changeset patch # User Mayank Agarwal # Date 1520885089 -19800 # Tue Mar 13 01:34:49 2018 +0530 # Node ID ca6f308b87eb9e87e59aff37c4b68eb30188072c # Parent 306356e228ecbc70ddc0bcd5880bfa9acb9a16e7 Added eigen_assert() to constructor of class Diagonal. diff --git a/Eigen/src/Core/Diagonal.h b/Eigen/src/Core/Diagonal.h --- a/Eigen/src/Core/Diagonal.h +++ b/Eigen/src/Core/Diagonal.h @@ -65,17 +65,19 @@ template::type Base; EIGEN_DENSE_PUBLIC_INTERFACE(Diagonal) EIGEN_DEVICE_FUNC - explicit inline Diagonal(MatrixType& matrix, Index a_index = DiagIndex) : m_matrix(matrix), m_index(a_index) {} + explicit inline Diagonal(MatrixType& matrix, Index a_index = DiagIndex) : m_matrix(matrix), m_index(a_index) { + eigen_assert(a_index <= this->cols() && (-a_index) <= this->rows()); + } EIGEN_INHERIT_ASSIGNMENT_OPERATORS(Diagonal) EIGEN_DEVICE_FUNC inline Index rows() const { return m_index.value()<0 ? numext::mini(m_matrix.cols(),m_matrix.rows()+m_index.value()) : numext::mini(m_matrix.rows(),m_matrix.cols()-m_index.value());