Cholesky segfaults on a zero-by-zero matrix

Submitted by Jitse Niesen

Assigned to Nobody

Link to original bugzilla bug (#785)
Version: 3.2

Description

Test code:

MatrixXd m1;
LDLT<MatrixXd> ldlt(m1);

Back trace (slightly cleaned up):

#0  0x0000000000403407 in internal::real_default_impl<double, false>::run (x=@0x0)  
    at [...]/Eigen/src/Core/MathFunctions.h:68  
#1  0x000000000040222a in numext::real<double> (x=@0x0)  
    at [...]/Eigen/src/Core/MathFunctions.h:583  
#2  0x000000000040160b in internal::ldlt_inplace<1>::unblocked<MatrixXd, Transpositions<-1, -1, int>, Matrix<double, -1, 1, 0, -1, 1> > (mat=..., transpositions=..., temp=..., sign=@0x7fffffffd818)  
    at [...]/Eigen/src/Cholesky/LDLT.h:271  
#3  0x00000000004012db in LDLT<MatrixXd, 1>::compute (this=0x7fffffffd7e0, a=...)  
    at [...]/Eigen/src/Cholesky/LDLT.h:452  
#4  0x0000000000400fcb in LDLT<MatrixXd, 1>::LDLT (this=0x7fffffffd7e0, matrix=...)  
    at [...]/Eigen/src/Cholesky/LDLT.h:108  
#5  0x00000000004009de in main () at forum.cc:9  
Edited by Antonio Sánchez