Martin Maechler Martin Maechler <maechler@stat.math.ethz.ch>
Mon, 12 Apr 1999 09:29:37 +0200

>>>>> "BDR" == Prof Brian D Ripley <ripley@stats.ox.ac.uk> writes:

    BDR> 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.

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

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

    BDR> 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 :-).

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

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

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

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

We must use a Mathlib.h -- src/nmath/  version of this

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

    BDR> (Do you want to revert?)

Yes! -- The eigen.c has been massaged etc to be quite a bit more readable
     than its Fortran counterpart..

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

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