diff options
-rw-r--r-- | byterun/floats.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/byterun/floats.c b/byterun/floats.c index c1f6ec5af..cde3ff51d 100644 --- a/byterun/floats.c +++ b/byterun/floats.c @@ -335,7 +335,8 @@ enum { FP_normal, FP_subnormal, FP_zero, FP_infinite, FP_nan }; CAMLprim value classify_float(value vd) { -#ifdef fpclassify + /* Cygwin 1.3 has problems with fpclassify (PR#1293), so don't use it */ +#if defined(fpclassify) && !defined(__CYGWIN32__) && !defined(__MINGW32__) switch (fpclassify(Double_val(vd))) { case FP_NAN: return Val_int(FP_nan); |