aboutsummaryrefslogtreecommitdiff
path: root/SRC/cbdsqr.f
diff options
context:
space:
mode:
authorlipshitz <lipshitz@8a072113-8704-0410-8d35-dd094bca7971>2011-10-03 19:24:45 +0000
committerlipshitz <lipshitz@8a072113-8704-0410-8d35-dd094bca7971>2011-10-03 19:24:45 +0000
commit3b27d3196c299551e634bd40e0662d244ff693e1 (patch)
treec88b0f664840b9227fc9f4a7f11f725d8d4bb884 /SRC/cbdsqr.f
parent0cd8057636e95b333c27913ee8d0dd3143f8af73 (diff)
Fix to Ming Gu's bug in dqds. See post of LAPACK DEV message board for more details
Diffstat (limited to 'SRC/cbdsqr.f')
-rw-r--r--SRC/cbdsqr.f9
1 files changed, 7 insertions, 2 deletions
diff --git a/SRC/cbdsqr.f b/SRC/cbdsqr.f
index 6142a818..12cbb748 100644
--- a/SRC/cbdsqr.f
+++ b/SRC/cbdsqr.f
@@ -106,7 +106,8 @@
* The leading dimension of the array C.
* LDC >= max(1,N) if NCC > 0; LDC >=1 if NCC = 0.
*
-* RWORK (workspace) REAL array, dimension (4*N)
+* RWORK (workspace) REAL array, dimension (2*N)
+* if NCVT = NRU = NCC = 0, (max(1, 4*N-4)) otherwise
*
* INFO (output) INTEGER
* = 0: successful exit
@@ -223,7 +224,11 @@
*
IF( .NOT.ROTATE ) THEN
CALL SLASQ1( N, D, E, RWORK, INFO )
- RETURN
+*
+* If INFO equals 2, dqds didn't finish, try to finish
+*
+ IF( INFO .NE. 2 ) RETURN
+ INFO = 0
END IF
*
NM1 = N - 1