On Tue, Jun 24, 2014 at 08:34:23PM +0200, Tobias Burnus wrote: > Steve Kargl wrote: > > On FreeBSD (and perhaps other *BSD), there is no fpsetsticky(). The > > function is fpresetsticky(). > > Solaris has fpsetsticky() (requires ieeefp.h) and BSD has > fpresetsticky() ? thus, like at other places in that file, one needs to > conditionally enable one or the other. >
I suppose I don't understand the logic in libgfortran/configure.host. It is picking the wrong config/fpu*.h file. gmake |& tee sgk.log shows (long lines wrapped) cp ../../../gcc4x/libgfortran/config/fpu-sysv.h fpu-target.h grep '^#define GFC_FPE_' < ../../../gcc4x/libgfortran/../gcc/fortran/\ libgfortran.h > fpu-target.inc || true grep '^#define GFC_FPE_' < ../../../gcc4x/libgfortran/libgfortran.h \ >> fpu-target.inc || true gmake all-am FreeBSD (and the other *BSD) have both feenbleexcept() and fpsetmask(), but neither check is correct. It seems the check for feenableexcept assumes glibc and fpsetmask assumes SysV system. -- Steve