Skip to content

Commit 63014e9

Browse files
authored
Cast work array sizes to integer (Reference-LAPACK PR 684)
1 parent 3a38dad commit 63014e9

3 files changed

Lines changed: 38 additions & 38 deletions

File tree

lapack-netlib/SRC/cgelss.f

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -266,11 +266,11 @@ SUBROUTINE CGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
266266
*
267267
* Compute space needed for CGEQRF
268268
CALL CGEQRF( M, N, A, LDA, DUM(1), DUM(1), -1, INFO )
269-
LWORK_CGEQRF = REAL( DUM(1) )
269+
LWORK_CGEQRF = INT( DUM(1) )
270270
* Compute space needed for CUNMQR
271271
CALL CUNMQR( 'L', 'C', M, NRHS, N, A, LDA, DUM(1), B,
272272
$ LDB, DUM(1), -1, INFO )
273-
LWORK_CUNMQR = REAL( DUM(1) )
273+
LWORK_CUNMQR = INT( DUM(1) )
274274
MM = N
275275
MAXWRK = MAX( MAXWRK, N + N*ILAENV( 1, 'CGEQRF', ' ', M,
276276
$ N, -1, -1 ) )
@@ -284,15 +284,15 @@ SUBROUTINE CGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
284284
* Compute space needed for CGEBRD
285285
CALL CGEBRD( MM, N, A, LDA, S, S, DUM(1), DUM(1), DUM(1),
286286
$ -1, INFO )
287-
LWORK_CGEBRD = REAL( DUM(1) )
287+
LWORK_CGEBRD = INT( DUM(1) )
288288
* Compute space needed for CUNMBR
289289
CALL CUNMBR( 'Q', 'L', 'C', MM, NRHS, N, A, LDA, DUM(1),
290290
$ B, LDB, DUM(1), -1, INFO )
291-
LWORK_CUNMBR = REAL( DUM(1) )
291+
LWORK_CUNMBR = INT( DUM(1) )
292292
* Compute space needed for CUNGBR
293293
CALL CUNGBR( 'P', N, N, N, A, LDA, DUM(1),
294294
$ DUM(1), -1, INFO )
295-
LWORK_CUNGBR = REAL( DUM(1) )
295+
LWORK_CUNGBR = INT( DUM(1) )
296296
* Compute total workspace needed
297297
MAXWRK = MAX( MAXWRK, 2*N + LWORK_CGEBRD )
298298
MAXWRK = MAX( MAXWRK, 2*N + LWORK_CUNMBR )
@@ -310,23 +310,23 @@ SUBROUTINE CGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
310310
* Compute space needed for CGELQF
311311
CALL CGELQF( M, N, A, LDA, DUM(1), DUM(1),
312312
$ -1, INFO )
313-
LWORK_CGELQF = REAL( DUM(1) )
313+
LWORK_CGELQF = INT( DUM(1) )
314314
* Compute space needed for CGEBRD
315315
CALL CGEBRD( M, M, A, LDA, S, S, DUM(1), DUM(1),
316316
$ DUM(1), -1, INFO )
317-
LWORK_CGEBRD = REAL( DUM(1) )
317+
LWORK_CGEBRD = INT( DUM(1) )
318318
* Compute space needed for CUNMBR
319319
CALL CUNMBR( 'Q', 'L', 'C', M, NRHS, N, A, LDA,
320320
$ DUM(1), B, LDB, DUM(1), -1, INFO )
321-
LWORK_CUNMBR = REAL( DUM(1) )
321+
LWORK_CUNMBR = INT( DUM(1) )
322322
* Compute space needed for CUNGBR
323323
CALL CUNGBR( 'P', M, M, M, A, LDA, DUM(1),
324324
$ DUM(1), -1, INFO )
325-
LWORK_CUNGBR = REAL( DUM(1) )
325+
LWORK_CUNGBR = INT( DUM(1) )
326326
* Compute space needed for CUNMLQ
327327
CALL CUNMLQ( 'L', 'C', N, NRHS, M, A, LDA, DUM(1),
328328
$ B, LDB, DUM(1), -1, INFO )
329-
LWORK_CUNMLQ = REAL( DUM(1) )
329+
LWORK_CUNMLQ = INT( DUM(1) )
330330
* Compute total workspace needed
331331
MAXWRK = M + LWORK_CGELQF
332332
MAXWRK = MAX( MAXWRK, 3*M + M*M + LWORK_CGEBRD )
@@ -345,15 +345,15 @@ SUBROUTINE CGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
345345
* Compute space needed for CGEBRD
346346
CALL CGEBRD( M, N, A, LDA, S, S, DUM(1), DUM(1),
347347
$ DUM(1), -1, INFO )
348-
LWORK_CGEBRD = REAL( DUM(1) )
348+
LWORK_CGEBRD = INT( DUM(1) )
349349
* Compute space needed for CUNMBR
350350
CALL CUNMBR( 'Q', 'L', 'C', M, NRHS, M, A, LDA,
351351
$ DUM(1), B, LDB, DUM(1), -1, INFO )
352-
LWORK_CUNMBR = REAL( DUM(1) )
352+
LWORK_CUNMBR = INT( DUM(1) )
353353
* Compute space needed for CUNGBR
354354
CALL CUNGBR( 'P', M, N, M, A, LDA, DUM(1),
355355
$ DUM(1), -1, INFO )
356-
LWORK_CUNGBR = REAL( DUM(1) )
356+
LWORK_CUNGBR = INT( DUM(1) )
357357
MAXWRK = 2*M + LWORK_CGEBRD
358358
MAXWRK = MAX( MAXWRK, 2*M + LWORK_CUNMBR )
359359
MAXWRK = MAX( MAXWRK, 2*M + LWORK_CUNGBR )

lapack-netlib/SRC/sgelss.f

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -253,11 +253,11 @@ SUBROUTINE SGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
253253
*
254254
* Compute space needed for SGEQRF
255255
CALL SGEQRF( M, N, A, LDA, DUM(1), DUM(1), -1, INFO )
256-
LWORK_SGEQRF=DUM(1)
256+
LWORK_SGEQRF = INT( DUM(1) )
257257
* Compute space needed for SORMQR
258258
CALL SORMQR( 'L', 'T', M, NRHS, N, A, LDA, DUM(1), B,
259259
$ LDB, DUM(1), -1, INFO )
260-
LWORK_SORMQR=DUM(1)
260+
LWORK_SORMQR = INT( DUM(1) )
261261
MM = N
262262
MAXWRK = MAX( MAXWRK, N + LWORK_SGEQRF )
263263
MAXWRK = MAX( MAXWRK, N + LWORK_SORMQR )
@@ -272,15 +272,15 @@ SUBROUTINE SGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
272272
* Compute space needed for SGEBRD
273273
CALL SGEBRD( MM, N, A, LDA, S, DUM(1), DUM(1),
274274
$ DUM(1), DUM(1), -1, INFO )
275-
LWORK_SGEBRD=DUM(1)
275+
LWORK_SGEBRD = INT( DUM(1) )
276276
* Compute space needed for SORMBR
277277
CALL SORMBR( 'Q', 'L', 'T', MM, NRHS, N, A, LDA, DUM(1),
278278
$ B, LDB, DUM(1), -1, INFO )
279-
LWORK_SORMBR=DUM(1)
279+
LWORK_SORMBR = INT( DUM(1) )
280280
* Compute space needed for SORGBR
281281
CALL SORGBR( 'P', N, N, N, A, LDA, DUM(1),
282282
$ DUM(1), -1, INFO )
283-
LWORK_SORGBR=DUM(1)
283+
LWORK_SORGBR = INT( DUM(1) )
284284
* Compute total workspace needed
285285
MAXWRK = MAX( MAXWRK, 3*N + LWORK_SGEBRD )
286286
MAXWRK = MAX( MAXWRK, 3*N + LWORK_SORMBR )
@@ -304,19 +304,19 @@ SUBROUTINE SGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
304304
* Compute space needed for SGEBRD
305305
CALL SGEBRD( M, M, A, LDA, S, DUM(1), DUM(1),
306306
$ DUM(1), DUM(1), -1, INFO )
307-
LWORK_SGEBRD=DUM(1)
307+
LWORK_SGEBRD = INT( DUM(1) )
308308
* Compute space needed for SORMBR
309309
CALL SORMBR( 'Q', 'L', 'T', M, NRHS, N, A, LDA,
310310
$ DUM(1), B, LDB, DUM(1), -1, INFO )
311-
LWORK_SORMBR=DUM(1)
311+
LWORK_SORMBR = INT( DUM(1) )
312312
* Compute space needed for SORGBR
313313
CALL SORGBR( 'P', M, M, M, A, LDA, DUM(1),
314314
$ DUM(1), -1, INFO )
315-
LWORK_SORGBR=DUM(1)
315+
LWORK_SORGBR = INT( DUM(1) )
316316
* Compute space needed for SORMLQ
317317
CALL SORMLQ( 'L', 'T', N, NRHS, M, A, LDA, DUM(1),
318318
$ B, LDB, DUM(1), -1, INFO )
319-
LWORK_SORMLQ=DUM(1)
319+
LWORK_SORMLQ = INT( DUM(1) )
320320
* Compute total workspace needed
321321
MAXWRK = M + M*ILAENV( 1, 'SGELQF', ' ', M, N, -1,
322322
$ -1 )
@@ -337,15 +337,15 @@ SUBROUTINE SGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
337337
* Compute space needed for SGEBRD
338338
CALL SGEBRD( M, N, A, LDA, S, DUM(1), DUM(1),
339339
$ DUM(1), DUM(1), -1, INFO )
340-
LWORK_SGEBRD=DUM(1)
340+
LWORK_SGEBRD = INT( DUM(1) )
341341
* Compute space needed for SORMBR
342342
CALL SORMBR( 'Q', 'L', 'T', M, NRHS, M, A, LDA,
343343
$ DUM(1), B, LDB, DUM(1), -1, INFO )
344-
LWORK_SORMBR=DUM(1)
344+
LWORK_SORMBR = INT( DUM(1) )
345345
* Compute space needed for SORGBR
346346
CALL SORGBR( 'P', M, N, M, A, LDA, DUM(1),
347347
$ DUM(1), -1, INFO )
348-
LWORK_SORGBR=DUM(1)
348+
LWORK_SORGBR = INT( DUM(1) )
349349
MAXWRK = 3*M + LWORK_SGEBRD
350350
MAXWRK = MAX( MAXWRK, 3*M + LWORK_SORMBR )
351351
MAXWRK = MAX( MAXWRK, 3*M + LWORK_SORGBR )

lapack-netlib/SRC/zgelss.f

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -266,11 +266,11 @@ SUBROUTINE ZGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
266266
*
267267
* Compute space needed for ZGEQRF
268268
CALL ZGEQRF( M, N, A, LDA, DUM(1), DUM(1), -1, INFO )
269-
LWORK_ZGEQRF = DBLE( DUM(1) )
269+
LWORK_ZGEQRF = INT( DUM(1) )
270270
* Compute space needed for ZUNMQR
271271
CALL ZUNMQR( 'L', 'C', M, NRHS, N, A, LDA, DUM(1), B,
272272
$ LDB, DUM(1), -1, INFO )
273-
LWORK_ZUNMQR = DBLE( DUM(1) )
273+
LWORK_ZUNMQR = INT( DUM(1) )
274274
MM = N
275275
MAXWRK = MAX( MAXWRK, N + N*ILAENV( 1, 'ZGEQRF', ' ', M,
276276
$ N, -1, -1 ) )
@@ -284,15 +284,15 @@ SUBROUTINE ZGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
284284
* Compute space needed for ZGEBRD
285285
CALL ZGEBRD( MM, N, A, LDA, S, S, DUM(1), DUM(1), DUM(1),
286286
$ -1, INFO )
287-
LWORK_ZGEBRD = DBLE( DUM(1) )
287+
LWORK_ZGEBRD = INT( DUM(1) )
288288
* Compute space needed for ZUNMBR
289289
CALL ZUNMBR( 'Q', 'L', 'C', MM, NRHS, N, A, LDA, DUM(1),
290290
$ B, LDB, DUM(1), -1, INFO )
291-
LWORK_ZUNMBR = DBLE( DUM(1) )
291+
LWORK_ZUNMBR = INT( DUM(1) )
292292
* Compute space needed for ZUNGBR
293293
CALL ZUNGBR( 'P', N, N, N, A, LDA, DUM(1),
294294
$ DUM(1), -1, INFO )
295-
LWORK_ZUNGBR = DBLE( DUM(1) )
295+
LWORK_ZUNGBR = INT( DUM(1) )
296296
* Compute total workspace needed
297297
MAXWRK = MAX( MAXWRK, 2*N + LWORK_ZGEBRD )
298298
MAXWRK = MAX( MAXWRK, 2*N + LWORK_ZUNMBR )
@@ -310,23 +310,23 @@ SUBROUTINE ZGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
310310
* Compute space needed for ZGELQF
311311
CALL ZGELQF( M, N, A, LDA, DUM(1), DUM(1),
312312
$ -1, INFO )
313-
LWORK_ZGELQF = DBLE( DUM(1) )
313+
LWORK_ZGELQF = INT( DUM(1) )
314314
* Compute space needed for ZGEBRD
315315
CALL ZGEBRD( M, M, A, LDA, S, S, DUM(1), DUM(1),
316316
$ DUM(1), -1, INFO )
317-
LWORK_ZGEBRD = DBLE( DUM(1) )
317+
LWORK_ZGEBRD = INT( DUM(1) )
318318
* Compute space needed for ZUNMBR
319319
CALL ZUNMBR( 'Q', 'L', 'C', M, NRHS, N, A, LDA,
320320
$ DUM(1), B, LDB, DUM(1), -1, INFO )
321-
LWORK_ZUNMBR = DBLE( DUM(1) )
321+
LWORK_ZUNMBR = INT( DUM(1) )
322322
* Compute space needed for ZUNGBR
323323
CALL ZUNGBR( 'P', M, M, M, A, LDA, DUM(1),
324324
$ DUM(1), -1, INFO )
325-
LWORK_ZUNGBR = DBLE( DUM(1) )
325+
LWORK_ZUNGBR = INT( DUM(1) )
326326
* Compute space needed for ZUNMLQ
327327
CALL ZUNMLQ( 'L', 'C', N, NRHS, M, A, LDA, DUM(1),
328328
$ B, LDB, DUM(1), -1, INFO )
329-
LWORK_ZUNMLQ = DBLE( DUM(1) )
329+
LWORK_ZUNMLQ = INT( DUM(1) )
330330
* Compute total workspace needed
331331
MAXWRK = M + LWORK_ZGELQF
332332
MAXWRK = MAX( MAXWRK, 3*M + M*M + LWORK_ZGEBRD )
@@ -345,15 +345,15 @@ SUBROUTINE ZGELSS( M, N, NRHS, A, LDA, B, LDB, S, RCOND, RANK,
345345
* Compute space needed for ZGEBRD
346346
CALL ZGEBRD( M, N, A, LDA, S, S, DUM(1), DUM(1),
347347
$ DUM(1), -1, INFO )
348-
LWORK_ZGEBRD = DBLE( DUM(1) )
348+
LWORK_ZGEBRD = INT( DUM(1) )
349349
* Compute space needed for ZUNMBR
350350
CALL ZUNMBR( 'Q', 'L', 'C', M, NRHS, M, A, LDA,
351351
$ DUM(1), B, LDB, DUM(1), -1, INFO )
352-
LWORK_ZUNMBR = DBLE( DUM(1) )
352+
LWORK_ZUNMBR = INT( DUM(1) )
353353
* Compute space needed for ZUNGBR
354354
CALL ZUNGBR( 'P', M, N, M, A, LDA, DUM(1),
355355
$ DUM(1), -1, INFO )
356-
LWORK_ZUNGBR = DBLE( DUM(1) )
356+
LWORK_ZUNGBR = INT( DUM(1) )
357357
MAXWRK = 2*M + LWORK_ZGEBRD
358358
MAXWRK = MAX( MAXWRK, 2*M + LWORK_ZUNMBR )
359359
MAXWRK = MAX( MAXWRK, 2*M + LWORK_ZUNGBR )

0 commit comments

Comments
 (0)