LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ xerbla_array()

subroutine xerbla_array ( character(1), dimension(srname_len)  srname_array,
integer  srname_len,
integer  info 
)

XERBLA_ARRAY

Download XERBLA_ARRAY + dependencies [TGZ] [ZIP] [TXT]

Purpose:
 XERBLA_ARRAY assists other languages in calling XERBLA, the LAPACK
 and BLAS error handler.  Rather than taking a Fortran string argument
 as the function's name, XERBLA_ARRAY takes an array of single
 characters along with the array's length.  XERBLA_ARRAY then copies
 up to 32 characters of that array into a Fortran string and passes
 that to XERBLA.  If called with a non-positive SRNAME_LEN,
 XERBLA_ARRAY will call XERBLA with a string of all blank characters.

 Say some macro or other device makes XERBLA_ARRAY available to C99
 by a name lapack_xerbla and with a common Fortran calling convention.
 Then a C99 program could invoke XERBLA via:
    {
      int flen = strlen(__func__);
      lapack_xerbla(__func__, &flen, &info);
    }

 Providing XERBLA_ARRAY is not necessary for intercepting LAPACK
 errors.  XERBLA_ARRAY calls XERBLA.
Parameters
[in]SRNAME_ARRAY
          SRNAME_ARRAY is CHARACTER(1) array, dimension (SRNAME_LEN)
          The name of the routine which called XERBLA_ARRAY.
[in]SRNAME_LEN
          SRNAME_LEN is INTEGER
          The length of the name in SRNAME_ARRAY.
[in]INFO
          INFO is INTEGER
          The position of the invalid parameter in the parameter list
          of the calling routine.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.

Definition at line 89 of file xerbla_array.f.

90*
91* -- LAPACK auxiliary routine --
92* -- LAPACK is a software package provided by Univ. of Tennessee, --
93* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
94*
95* .. Scalar Arguments ..
96 INTEGER SRNAME_LEN, INFO
97* ..
98* .. Array Arguments ..
99 CHARACTER(1) SRNAME_ARRAY(SRNAME_LEN)
100* ..
101*
102* =====================================================================
103*
104* ..
105* .. Local Scalars ..
106 INTEGER I
107* ..
108* .. Local Arrays ..
109 CHARACTER*32 SRNAME
110* ..
111* .. Intrinsic Functions ..
112 INTRINSIC min, len
113* ..
114* .. External Functions ..
115 EXTERNAL xerbla
116* ..
117* .. Executable Statements ..
118 srname = ' '
119 DO i = 1, min( srname_len, len( srname ) )
120 srname( i:i ) = srname_array( i )
121 END DO
122
123 CALL xerbla( srname, info )
124
125 RETURN
subroutine xerbla(srname, info)
Definition cblat2.f:3285
Here is the call graph for this function: