Annotation of rpl/lapack/blas/xerbla_array.f, revision 1.1

1.1     ! bertrand    1: *> \brief \b XERBLA_ARRAY
        !             2: *
        !             3: *  =========== DOCUMENTATION ===========
        !             4: *
        !             5: * Online html documentation available at 
        !             6: *            http://www.netlib.org/lapack/explore-html/ 
        !             7: *
        !             8: *  Definition:
        !             9: *  ===========
        !            10: *
        !            11: *       SUBROUTINE XERBLA_ARRAY(SRNAME_ARRAY, SRNAME_LEN, INFO)
        !            12: * 
        !            13: *       .. Scalar Arguments ..
        !            14: *       INTEGER SRNAME_LEN, INFO
        !            15: *       ..
        !            16: *       .. Array Arguments ..
        !            17: *       CHARACTER(1) SRNAME_ARRAY(SRNAME_LEN)
        !            18: *       ..
        !            19: *  
        !            20: *
        !            21: *> \par Purpose:
        !            22: *  =============
        !            23: *>
        !            24: *> \verbatim
        !            25: *>
        !            26: *> XERBLA_ARRAY assists other languages in calling XERBLA, the LAPACK
        !            27: *> and BLAS error handler.  Rather than taking a Fortran string argument
        !            28: *> as the function's name, XERBLA_ARRAY takes an array of single
        !            29: *> characters along with the array's length.  XERBLA_ARRAY then copies
        !            30: *> up to 32 characters of that array into a Fortran string and passes
        !            31: *> that to XERBLA.  If called with a non-positive SRNAME_LEN,
        !            32: *> XERBLA_ARRAY will call XERBLA with a string of all blank characters.
        !            33: *>
        !            34: *> Say some macro or other device makes XERBLA_ARRAY available to C99
        !            35: *> by a name lapack_xerbla and with a common Fortran calling convention.
        !            36: *> Then a C99 program could invoke XERBLA via:
        !            37: *>    {
        !            38: *>      int flen = strlen(__func__);
        !            39: *>      lapack_xerbla(__func__, &flen, &info);
        !            40: *>    }
        !            41: *>
        !            42: *> Providing XERBLA_ARRAY is not necessary for intercepting LAPACK
        !            43: *> errors.  XERBLA_ARRAY calls XERBLA.
        !            44: *> \endverbatim
        !            45: *
        !            46: *  Arguments:
        !            47: *  ==========
        !            48: *
        !            49: *> \param[in] SRNAME_ARRAY
        !            50: *> \verbatim
        !            51: *>          SRNAME_ARRAY is CHARACTER(1) array, dimension (SRNAME_LEN)
        !            52: *>          The name of the routine which called XERBLA_ARRAY.
        !            53: *> \endverbatim
        !            54: *>
        !            55: *> \param[in] SRNAME_LEN
        !            56: *> \verbatim
        !            57: *>          SRNAME_LEN is INTEGER
        !            58: *>          The length of the name in SRNAME_ARRAY.
        !            59: *> \endverbatim
        !            60: *>
        !            61: *> \param[in] INFO
        !            62: *> \verbatim
        !            63: *>          INFO is INTEGER
        !            64: *>          The position of the invalid parameter in the parameter list
        !            65: *>          of the calling routine.
        !            66: *> \endverbatim
        !            67: *
        !            68: *  Authors:
        !            69: *  ========
        !            70: *
        !            71: *> \author Univ. of Tennessee 
        !            72: *> \author Univ. of California Berkeley 
        !            73: *> \author Univ. of Colorado Denver 
        !            74: *> \author NAG Ltd. 
        !            75: *
        !            76: *> \date November 2011
        !            77: *
        !            78: *> \ingroup aux_blas
        !            79: *
        !            80: *  =====================================================================
        !            81:       SUBROUTINE XERBLA_ARRAY(SRNAME_ARRAY, SRNAME_LEN, INFO)
        !            82: *
        !            83: *  -- Reference BLAS level1 routine (version 3.4.0) --
        !            84: *  -- Reference BLAS is a software package provided by Univ. of Tennessee,    --
        !            85: *  -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
        !            86: *     November 2011
        !            87: *
        !            88: *     .. Scalar Arguments ..
        !            89:       INTEGER SRNAME_LEN, INFO
        !            90: *     ..
        !            91: *     .. Array Arguments ..
        !            92:       CHARACTER(1) SRNAME_ARRAY(SRNAME_LEN)
        !            93: *     ..
        !            94: *
        !            95: * =====================================================================
        !            96: *
        !            97: *     ..
        !            98: *     .. Local Scalars ..
        !            99:       INTEGER I
        !           100: *     ..
        !           101: *     .. Local Arrays ..
        !           102:       CHARACTER*32 SRNAME
        !           103: *     ..
        !           104: *     .. Intrinsic Functions ..
        !           105:       INTRINSIC MIN, LEN
        !           106: *     ..
        !           107: *     .. External Functions ..
        !           108:       EXTERNAL XERBLA
        !           109: *     ..
        !           110: *     .. Executable Statements ..
        !           111:       SRNAME = ''
        !           112:       DO I = 1, MIN( SRNAME_LEN, LEN( SRNAME ) )
        !           113:          SRNAME( I:I ) = SRNAME_ARRAY( I )
        !           114:       END DO
        !           115: 
        !           116:       CALL XERBLA( SRNAME, INFO )
        !           117: 
        !           118:       RETURN
        !           119:       END

CVSweb interface <joel.bertrand@systella.fr>