LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ 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.
Date
December 2016

Definition at line 92 of file xerbla_array.f.

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