40{
43 float* rwork = NULL;
48 return -1;
49 }
50#ifndef LAPACK_DISABLE_NAN_CHECK
52
54 return -5;
55 }
57 return -7;
58 }
60 return -10;
61 }
62 }
63#endif
64
66 if( rwork == NULL ) {
68 goto exit_level_0;
69 }
70
72 rcond, rank, &work_query, lwork, rwork );
73 if( info != 0 ) {
74 goto exit_level_1;
75 }
77
80 if( work == NULL ) {
82 goto exit_level_1;
83 }
84
86 rcond, rank, work, lwork, rwork );
87
89exit_level_1:
91exit_level_0:
94 }
95 return info;
96}
#define lapack_complex_float
#define LAPACK_WORK_MEMORY_ERROR
lapack_int LAPACKE_cgelss_work(int matrix_layout, lapack_int m, lapack_int n, lapack_int nrhs, lapack_complex_float *a, lapack_int lda, lapack_complex_float *b, lapack_int ldb, float *s, float rcond, lapack_int *rank, lapack_complex_float *work, lapack_int lwork, float *rwork)
int LAPACKE_get_nancheck(void)
#define LAPACKE_malloc(size)
void LAPACKE_xerbla(const char *name, lapack_int info)
lapack_logical LAPACKE_s_nancheck(lapack_int n, const float *x, lapack_int incx)
lapack_logical LAPACKE_cge_nancheck(int matrix_layout, lapack_int m, lapack_int n, const lapack_complex_float *a, lapack_int lda)