Fix BDCSVD condition for failing with numerical issue.
diff --git a/Eigen/src/SVD/BDCSVD.h b/Eigen/src/SVD/BDCSVD.h
index 2c1cbf9..17bd288 100644
--- a/Eigen/src/SVD/BDCSVD.h
+++ b/Eigen/src/SVD/BDCSVD.h
@@ -1099,7 +1099,7 @@
 #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;