diff --git a/Eigen/src/SVD/BDCSVD.h b/Eigen/src/SVD/BDCSVD.h index 6dcb986c1..79a6562b7 100644 --- a/Eigen/src/SVD/BDCSVD.h +++ b/Eigen/src/SVD/BDCSVD.h @@ -1035,7 +1035,7 @@ void BDCSVD::perturbCol0 #endif // Avoid index out of bounds. // Will end up setting zhat(k) = 0. - if (l == 0) { + if (i >= k && l == 0) { m_info = NumericalIssue; prod = 0; break;