Currently user specified threshold (via setThreshold) is only used in rank() while compute() sets its own threshold:
RealScalar threshold_helper = m_colSqNorms.maxCoeff() * internal::abs2(NumTraits<Scalar>::epsilon()) / RealScalar(rows);
to compute m_nonzero_pivots. Then solve() also uses m_nonzero_pivots instead of rank().
This also this thread:
-- GitLab Migration Automatic Message --
This bug has been migrated to gitlab.com's GitLab instance and has been closed from further activity.
You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.com/libeigen/eigen/issues/295.