xerbla called from BLAS routine (PR#8100)
On Mon, 29 Aug 2005, G?ran Brostr?m wrote:
On Mon, Aug 29, 2005 at 10:27:24AM +0100, Prof Brian Ripley wrote:
On Mon, 29 Aug 2005, G?ran Brostr?m wrote:
[...]
BTW, the original BLAS xerbla (from the netlib page you referred to) gives the message: WRITE( *, FMT = 9999 )SRNAME, INFO 9999 FORMAT( ' ** On entry to ', A6, ' parameter number ', I2, ' had ', $ 'an illegal value' ) which I think is even better than my original suggestion. (Why was it changed?)
Probably because R is not a Fortran program and so needs to make clear what these refer to, and because LAPACK does have other error values that invalid parameter values.
LAPACK/BLAS routines call xerbla "if an input parameter has an invalid value" (exact quote from XERBLA at Netlib). Other types of errors are not printed (by xerbla), but it is up to the user to check the return value of the argument 'INFO'. See http://www.netlib.org/lapack/lug/node119.html.
Maybe, that is not actually true for real-life LAPACK implementations, as I did say.
So we can safely give the more informative, original, error messages, together with mentioning LAPACK and eventually BLAS, whatever you prefer. This would "make clear what these refer to". Given that other BLAS/LAPACK routines than xerbla aren't changed in R, of course.
Irrelevant as R is often compiled against other ones implementations.
Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595