xerbla_array(3)

πŸ’… xerbla_array(3) β€” Library Functions Manual πŸ’…

okay bestie, welcome to xerbla_array, the little helper that’s literally here to make error reporting from C hit different. It’s giving β€œLAPACK/BLAS error handler’s bilingual bestie,” and I’m obsessed. 🫢

✨ NAME ✨

xerbla_array β€” xerbla_array: error reporting, callable from C. no cap, that’s the whole name vibe. πŸ’–

πŸ¦‹ SYNOPSIS πŸ¦‹

🌸 Functions 🌸

subroutine xerbla_array (srname_array, srname_len, info)

XERBLA_ARRAY β€” yes, that’s the icon itself. πŸ‘‘

πŸ”₯ DETAILED DESCRIPTION πŸ”₯

bestie, this section is where the deep lore would live, and the actual details are right below in the function documentation. keep scrolling, it’s worth it. πŸ’…

πŸ’– FUNCTION DOCUMENTATION πŸ’–

🧚 subroutine xerbla_array 🧚

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

XERBLA_ARRAY

🌟 Purpose 🌟

Okay so picture this: XERBLA_ARRAY helps other languages call XERBLA, aka the LAPACK and BLAS error handler. iconic behavior, honestly. 🫢

Instead of taking a Fortran string argument as the function’s name, XERBLA_ARRAY takes an array of single characters plus the array’s length. then XERBLA_ARRAY copies up to 32 characters of that array into a Fortran string and passes that string to XERBLA. the way that works is lowkey elegant. ✨

If it’s called with a non-positive SRNAME_LEN, XERBLA_ARRAY will call XERBLA with a string of all blank characters. periodt. πŸ’…

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. that’s it, that’s the tea. πŸ“

πŸŽ€ Parameters πŸŽ€

  • SRNAME_ARRAY β€” SRNAME_ARRAY is a CHARACTER(1) array, dimension (SRNAME_LEN). It’s the name of the routine which called XERBLA_ARRAY. main character energy, fr fr. πŸ‘‘
  • SRNAME_LEN β€” SRNAME_LEN is INTEGER. It’s the length of the name in SRNAME_ARRAY. we love a clean length parameter. πŸ’–
  • INFO β€” INFO is INTEGER. It’s the position of the invalid parameter in the parameter list of the calling routine. telling you exactly where the chaos happened. πŸ”₯

πŸ‘‘ Author πŸ‘‘

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 89 of file xerbla_array.f. literally right there if you need to peek at the source, bestie. πŸ¦‹

🌈 AUTHOR 🌈

Generated automatically by Doxygen for LAPACK from the source code. yes, the docs were generated, and they ate. πŸ’…


cute little footer sign-off: this page is from LAPACK, Version 3.12.0 β€” and the original footer doesn’t give a date, so I’m not gonna invent one, bestie. πŸ™ˆ That’s the source/version energy at the very end. πŸŽ€

πŸ“¦ where this page comes from