3 * =========== DOCUMENTATION ===========
5 * Online html documentation available at
6 * http://www.netlib.org/lapack/explore-html/
11 * SUBROUTINE XERBLA( SRNAME, INFO )
13 * .. Scalar Arguments ..
14 * CHARACTER*(*) SRNAME
24 *> This is a special version of XERBLA to be used only as part of
25 *> the test program for testing error exits from the LAPACK routines.
26 *> Error messages are printed if INFO.NE.INFOT or if SRNAME.NE.SRNAMT,
27 *> where INFOT and SRNAMT are values stored in COMMON.
35 *> SRNAME is CHARACTER*(*)
36 *> The name of the subroutine calling XERBLA. This name should
37 *> match the COMMON variable SRNAMT.
43 *> The error return code from the calling subroutine. INFO
44 *> should equal the COMMON variable INFOT.
50 *> \author Univ. of Tennessee
51 *> \author Univ. of California Berkeley
52 *> \author Univ. of Colorado Denver
55 *> \date November 2011
59 *> \par Further Details:
60 * =====================
64 *> The following variables are passed via the common blocks INFOC and
67 *> INFOT INTEGER Expected integer return code
68 *> NOUT INTEGER Unit number for printing error messages
69 *> OK LOGICAL Set to .TRUE. if INFO = INFOT and
70 *> SRNAME = SRNAMT, otherwise set to .FALSE.
71 *> LERR LOGICAL Set to .TRUE., indicating that XERBLA was called
72 *> SRNAMT CHARACTER*(*) Expected name of calling subroutine
75 * =====================================================================
76 SUBROUTINE XERBLA( SRNAME, INFO )
78 * -- LAPACK test routine (version 3.4.0) --
79 * -- LAPACK is a software package provided by Univ. of Tennessee, --
80 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
83 * .. Scalar Arguments ..
88 * =====================================================================
90 * .. Scalars in Common ..
95 * .. Intrinsic Functions ..
99 COMMON / INFOC / INFOT, NOUT, OK, LERR
100 COMMON / SRNAMC / SRNAMT
102 * .. Executable Statements ..
105 IF( INFO.NE.INFOT ) THEN
106 IF( INFOT.NE.0 ) THEN
107 WRITE( NOUT, FMT = 9999 )
108 $ SRNAMT( 1:LEN_TRIM( SRNAMT ) ), INFO, INFOT
110 WRITE( NOUT, FMT = 9997 )
111 $ SRNAME( 1:LEN_TRIM( SRNAME ) ), INFO
115 IF( SRNAME.NE.SRNAMT ) THEN
116 WRITE( NOUT, FMT = 9998 )
117 $ SRNAME( 1:LEN_TRIM( SRNAME ) ),
118 $ SRNAMT( 1:LEN_TRIM( SRNAMT ) )
123 9999 FORMAT( ' *** XERBLA was called from ', A, ' with INFO = ', I6,
124 $ ' instead of ', I2, ' ***' )
125 9998 FORMAT( ' *** XERBLA was called with SRNAME = ', A,
126 $ ' instead of ', A6, ' ***' )
127 9997 FORMAT( ' *** On entry to ', A, ' parameter number ', I6,
128 $ ' had an illegal value ***' )