LAPACK  3.10.1
LAPACK: Linear Algebra PACKage

◆ xerbla_array()

subroutine xerbla_array ( character(1), dimension(srname_len)  SRNAME_ARRAY,
integer  SRNAME_LEN,
integer  INFO 
)

XERBLA_ARRAY

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 79 of file xerbla_array.f.

80 *
81 * -- Reference BLAS level1 routine --
82 * -- Reference BLAS is a software package provided by Univ. of Tennessee, --
83 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
84 *
85 * .. Scalar Arguments ..
86  INTEGER SRNAME_LEN, INFO
87 * ..
88 * .. Array Arguments ..
89  CHARACTER(1) SRNAME_ARRAY(SRNAME_LEN)
90 * ..
91 *
92 * =====================================================================
93 *
94 * ..
95 * .. Local Scalars ..
96  INTEGER I
97 * ..
98 * .. Local Arrays ..
99  CHARACTER*32 SRNAME
100 * ..
101 * .. Intrinsic Functions ..
102  INTRINSIC min, len
103 * ..
104 * .. External Functions ..
105  EXTERNAL xerbla
106 * ..
107 * .. Executable Statements ..
108  srname = ''
109  DO i = 1, min( srname_len, len( srname ) )
110  srname( i:i ) = srname_array( i )
111  END DO
112 
113  CALL xerbla( srname, info )
114 
115  RETURN
116 *
117 * End of XERBLA_ARRAY
118 *
subroutine xerbla(SRNAME, INFO)
XERBLA
Definition: xerbla.f:60
Here is the call graph for this function: