Prof Brian D Ripley ripley@stats.ox.ac.uk
Sat, 10 Apr 1999 06:21:47 +0100 (BST)

On Sat, 10 Apr 1999, Ross Ihaka wrote:

> I don't know what the problem was, but I think I have a fix.  I have
> replaced src/appl/eigen.c by the original set of fortran eispack routines. 
> This seems to fix the problem on my Solaris box. 

The bug is that Fortran.h had <math.h>, now has "Mathlib.h", and soemthing
in there is trampling over error.c

> I suspect that this bug may have been there for a while.

No, it _is_ a 0.64 change, 0.63.3 is unaffected.

> I am still puzzled that it was not tripped on my FreeBSD box.  It must be
> the advanced compiler technology; it silently finds and fixes the bugs in
> your code as you compile it :-).

Look to header files in such circumstances. Mathlib.h includes

#include <errno.h>
#include <limits.h>
#include <float.h>
#include <math.h>
#include <stdlib.h>

and on Solaris the culprit is the last one of these.

Guess what: there a load of abs/fabs errors in eigen.c.  On some
systems abs is a macro, on others a function and on others it
depends on the optimization level.

> Anyway could someone check that this change does the job on Linux etc.
> (I've committed in both branches).

(Do you want to revert?)

What worries me is what else Mathlib.h might be trampling over.
I think we need to check this over.

Brian D. Ripley,                  ripley@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 272860 (secr)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-devel-request@stat.math.ethz.ch