[R] Irix 6.5: > is.na(c(1,NA)) #> FALSE FALSE
gwhite at bodnext.bio.dfo.ca
Thu Feb 18 13:12:51 CET 1999
The configure script should probably try to determine if ((x)!=(x))
is working properly with the chosen compiler flags. Even for the
(minority of) users who know what flags to use, it is all too easy to
forget to add the necessary incantations in config.site.
For some environments, floating point configuration can be changed by
factors external to the application (e.g., DLL versions or environment
flags). To detect this, it would be useful to include a check for proper
functioning of isnan in the startup code.
In defense of SGI, the new compilers offer lots of scope for users to use
or ignore IEEE 754, including environment variables that can enable
trapping various f.p. exceptions, count the number of exceptions, and
trigger an abort after some number of exceptions. This is a lot more
useful for people running "tradtional" scientific Fortran codes than
getting files full of NaN's. I'm sure the default settings were chosen to
make common benchmark tests look good, as such results are still a big
factor in some purchasing decisions.
George White <aa056 at chebucto.ns.ca> tel: 902.426.8509
Bedford Inst. of Oceanography, Nova Scotia, Canada.
On Wed, 17 Feb 1999, Peter Dalgaard BSA wrote:
> George White <gwhite at bodnext.bio.dfo.ca> writes:
> > [...] The Irix 6.5 release notes explain that the test
> > (x!=x) will be compiled to "false" unless the command line option:
> > -OPT:IEEE_NaN_inf=ON
> > is supplied for the SGI compilers.
> Er? Does that help? Since we rely on (from Arith.h)
> #define ISNAN(x) ((x)!=(x))
> all over the place, it's not surprising that it won't work if it
> compiles to false. (What kind of standards compliance is that
r-help 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-help-request at stat.math.ethz.ch
More information about the R-help