Skip to content

Conversation

@ACSimon33
Copy link
Contributor

Description

In the error tests of tall-skinny QR routines, the array TAU was of length NMAX=2, but the GEMLQ and GEMQR routines read the second and third entry. This was already fixed by a149100 for the real routines. The complex routines still had this issue, and it was flagged by an address sanitizer.

I increased the size of TAU to 5 since that is the expected minimal size of the array according to the documentation:

*> \param[out] T
*> \verbatim
*>          T is COMPLEX*16 array, dimension (MAX(5,TSIZE))
*>          On exit, if INFO = 0, T(1) returns optimal (or either minimal 
*>          or optimal, if query is assumed) TSIZE. See TSIZE for details.
*>          Remaining T contains part of the data structure used to represent Q.
*>          If one wants to apply or construct Q, then one needs to keep T 
*>          (in addition to A) and pass it to further subroutines.
*> \endverbatim

It doesn't need to be larger, since we never reach the part of the code that reads or writes the rest of the array. Additionally, I removed the unused array T in these tests.

There were also some FORMAT specifier lines longer than 72 characters in the BLAS tests, which the NAG Fortran compiler doesn't like by default. Those are also fixed now.

@langou
Copy link
Contributor

langou commented Jan 7, 2026

Thanks for the fixes!

@langou langou merged commit 8856fad into Reference-LAPACK:master Jan 7, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants