Here comes the original code. It compiles with GCC:
CALL CLA_GERFSX_EXTENDED( PREC_TYPE, TRANS_TYPE, N,
$ NRHS, A, LDA, AF, LDAF, IPIV, COLEQU, C, B,
$ LDB, X, LDX, BERR, N_NORMS, ERR_BNDS_NORM,
$ ERR_BNDS_COMP, WORK, RWORK, WORK(N+1),
$ TRANSFER (RWORK(1:2*N), (/ (ZERO, ZERO) /), N),
$ RCOND, ITHRESH, RTHRESH, UNSTABLE_THRESH, IGNORE_CWISE,
$ INFO )
The code is part of the official netlib LAPACK distribution (netlib.org). The example above comes from the file cgerfsx.f and marks one of 15 places, where this error occours as well. They all relate to a similar function call.
Here comes the declaration part of the called function:
SUBROUTINE CLA_GERFSX_EXTENDED( PREC_TYPE, TRANS_TYPE, N, NRHS, A,
$ LDA, AF, LDAF, IPIV, COLEQU, C, B,
$ LDB, Y, LDY, BERR_OUT, N_NORMS,
$ ERRS_N, ERRS_C, RES, AYB, DY,
$ Y_TAIL, RCOND, ITHRESH, RTHRESH,
$ DZ_UB, IGNORE_CWISE, INFO )
- -- LAPACK computational routine (version 3.4.0) --
- -- LAPACK is a software package provided by Univ. of Tennessee, --
- -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
-
November 2011
-
.. Scalar Arguments ..
INTEGER INFO, LDA, LDAF, LDB, LDY, N, NRHS, PREC_TYPE,
$ TRANS_TYPE, N_NORMS
LOGICAL COLEQU, IGNORE_CWISE
INTEGER ITHRESH
REAL RTHRESH, DZ_UB
-
..
-
.. Array Arguments
INTEGER IPIV( * )
COMPLEX A( LDA, * ), AF( LDAF, * ), B( LDB, * ),
$ Y( LDY, * ), RES( * ), DY( * ), Y_TAIL( * )
REAL C( * ), AYB( * ), RCOND, BERR_OUT( * ),
$ ERRS_N( NRHS, * ), ERRS_C( NRHS, * )
-
..
The full code is somehow lengthy. But I can post it here as well for reference if you need it. Thanks!