diff --git a/lapack-netlib/LAPACKE/src/lapacke_cgeev_work.c b/lapack-netlib/LAPACKE/src/lapacke_cgeev_work.c index 081f5b129..af6a247ed 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_cgeev_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_cgeev_work.c @@ -61,12 +61,12 @@ lapack_int LAPACKE_cgeev_work( int matrix_layout, char jobvl, char jobvr, LAPACKE_xerbla( "LAPACKE_cgeev_work", info ); return info; } - if( ldvl < n ) { + if( ldvl < 1 || ( LAPACKE_lsame( jobvl, 'v' ) && ldvl < n ) ) { info = -9; LAPACKE_xerbla( "LAPACKE_cgeev_work", info ); return info; } - if( ldvr < n ) { + if( ldvr < 1 || ( LAPACKE_lsame( jobvr, 'v' ) && ldvr < n ) ) { info = -11; LAPACKE_xerbla( "LAPACKE_cgeev_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_cgeevx_work.c b/lapack-netlib/LAPACKE/src/lapacke_cgeevx_work.c index 2257c64df..632ddd661 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_cgeevx_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_cgeevx_work.c @@ -65,12 +65,12 @@ lapack_int LAPACKE_cgeevx_work( int matrix_layout, char balanc, char jobvl, LAPACKE_xerbla( "LAPACKE_cgeevx_work", info ); return info; } - if( ldvl < n ) { + if( ldvl < 1 || ( LAPACKE_lsame( jobvl, 'v' ) && ldvl < n ) ) { info = -11; LAPACKE_xerbla( "LAPACKE_cgeevx_work", info ); return info; } - if( ldvr < n ) { + if( ldvr < 1 || ( LAPACKE_lsame( jobvr, 'v' ) && ldvr < n ) ) { info = -13; LAPACKE_xerbla( "LAPACKE_cgeevx_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_cgges_work.c b/lapack-netlib/LAPACKE/src/lapacke_cgges_work.c index ff74939a3..be0b8347f 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_cgges_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_cgges_work.c @@ -72,12 +72,12 @@ lapack_int LAPACKE_cgges_work( int matrix_layout, char jobvsl, char jobvsr, LAPACKE_xerbla( "LAPACKE_cgges_work", info ); return info; } - if( ldvsl < n ) { + if( ldvsl < 1 || ( LAPACKE_lsame( jobvsl, 'v' ) && ldvsl < n ) ) { info = -15; LAPACKE_xerbla( "LAPACKE_cgges_work", info ); return info; } - if( ldvsr < n ) { + if( ldvsr < 1 || ( LAPACKE_lsame( jobvsr, 'v' ) && ldvsr < n ) ) { info = -17; LAPACKE_xerbla( "LAPACKE_cgges_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_cggesx_work.c b/lapack-netlib/LAPACKE/src/lapacke_cggesx_work.c index 7edb1fa9b..311fe6e0a 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_cggesx_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_cggesx_work.c @@ -76,12 +76,12 @@ lapack_int LAPACKE_cggesx_work( int matrix_layout, char jobvsl, char jobvsr, LAPACKE_xerbla( "LAPACKE_cggesx_work", info ); return info; } - if( ldvsl < n ) { + if( ldvsl < 1 || ( LAPACKE_lsame( jobvsl, 'v' ) && ldvsl < n ) ) { info = -16; LAPACKE_xerbla( "LAPACKE_cggesx_work", info ); return info; } - if( ldvsr < n ) { + if( ldvsr < 1 || ( LAPACKE_lsame( jobvsr, 'v' ) && ldvsr < n ) ) { info = -18; LAPACKE_xerbla( "LAPACKE_cggesx_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_dgeev_work.c b/lapack-netlib/LAPACKE/src/lapacke_dgeev_work.c index c4de72394..424f5d176 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_dgeev_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_dgeev_work.c @@ -59,12 +59,12 @@ lapack_int LAPACKE_dgeev_work( int matrix_layout, char jobvl, char jobvr, LAPACKE_xerbla( "LAPACKE_dgeev_work", info ); return info; } - if( ldvl < n ) { + if( ldvl < 1 || ( LAPACKE_lsame( jobvl, 'v' ) && ldvl < n ) ) { info = -10; LAPACKE_xerbla( "LAPACKE_dgeev_work", info ); return info; } - if( ldvr < n ) { + if( ldvr < 1 || ( LAPACKE_lsame( jobvr, 'v' ) && ldvr < n ) ) { info = -12; LAPACKE_xerbla( "LAPACKE_dgeev_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_dgeevx_work.c b/lapack-netlib/LAPACKE/src/lapacke_dgeevx_work.c index 9efb49ed3..7f4c6881d 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_dgeevx_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_dgeevx_work.c @@ -63,12 +63,12 @@ lapack_int LAPACKE_dgeevx_work( int matrix_layout, char balanc, char jobvl, LAPACKE_xerbla( "LAPACKE_dgeevx_work", info ); return info; } - if( ldvl < n ) { + if( ldvl < 1 || ( LAPACKE_lsame( jobvl, 'v' ) && ldvl < n ) ) { info = -12; LAPACKE_xerbla( "LAPACKE_dgeevx_work", info ); return info; } - if( ldvr < n ) { + if( ldvr < 1 || ( LAPACKE_lsame( jobvr, 'v' ) && ldvr < n ) ) { info = -14; LAPACKE_xerbla( "LAPACKE_dgeevx_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_dgges_work.c b/lapack-netlib/LAPACKE/src/lapacke_dgges_work.c index effa1b3f5..bc6bf47d9 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_dgges_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_dgges_work.c @@ -70,12 +70,12 @@ lapack_int LAPACKE_dgges_work( int matrix_layout, char jobvsl, char jobvsr, LAPACKE_xerbla( "LAPACKE_dgges_work", info ); return info; } - if( ldvsl < n ) { + if( ldvsl < 1 || ( LAPACKE_lsame( jobvsl, 'v' ) && ldvsl < n ) ) { info = -16; LAPACKE_xerbla( "LAPACKE_dgges_work", info ); return info; } - if( ldvsr < n ) { + if( ldvsr < 1 || ( LAPACKE_lsame( jobvsr, 'v' ) && ldvsr < n ) ) { info = -18; LAPACKE_xerbla( "LAPACKE_dgges_work", info ); return info; diff --git a/lapack-netlib/LAPACKE/src/lapacke_dggesx_work.c b/lapack-netlib/LAPACKE/src/lapacke_dggesx_work.c index ace40a32a..bde1321d7 100644 --- a/lapack-netlib/LAPACKE/src/lapacke_dggesx_work.c +++ b/lapack-netlib/LAPACKE/src/lapacke_dggesx_work.c @@ -73,12 +73,12 @@ lapack_int LAPACKE_dggesx_work( int matrix_layout, char jobvsl, char jobvsr, LAPACKE_xerbla( "LAPACKE_dggesx_work", info ); return info; } - if( ldvsl < n ) { + if( ldvsl < 1 || ( LAPACKE_lsame( jobvsl, 'v' ) && ldvsl < n ) ) { info = -17; LAPACKE_xerbla( "LAPACKE_dggesx_work", info ); return info; } - if( ldvsr < n ) { + if( ldvsr < 1 || ( LAPACKE_lsame( jobvsr, 'v' ) && ldvsr < n ) ) { info = -19; LAPACKE_xerbla( "LAPACKE_dggesx_work", info ); return info;