X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Frrd_config_bottom.h;h=a569197ab9a8b709f0135895ad88b60248648852;hb=2c16b54029a3f5f08899c15d82c78a3a23d99e94;hp=ec191b9e0f7ced35c116061c9a02b9be474d7ef9;hpb=734d64e1e4744aa0994cc7956263ac72e3d42eb1;p=rrdtool.git diff --git a/src/rrd_config_bottom.h b/src/rrd_config_bottom.h index ec191b9..a569197 100644 --- a/src/rrd_config_bottom.h +++ b/src/rrd_config_bottom.h @@ -175,17 +175,18 @@ char *strchr (), *strrchr (); # ifdef isinf # undef isinf # endif -# define isinf(a) (fpclass(a) == FP_NINF || fpclass(a) == FP_PINF) +# define isinf(a) (!!(fpclass(a) & (FP_SNAN|FP_QNAN))) + #endif /* solaris 10 it defines isnan such that only forte can compile it ... bad bad */ -#if (defined(HAVE_ISNAN) && defined(isnan) && defined(HAVE_FPCLASS)) +#if (defined(HAVE_ISNAN) && defined(isnan) && defined(HAVE_FPCLASS) && defined(FP_SNAN) && defined(FP_QNAN)) # undef isnan # define isnan(a) (fpclass(a) == FP_SNAN || fpclass(a) == FP_QNAN) #endif /* for OSF1 Digital Unix */ -#if (! defined(HAVE_ISINF) && defined(HAVE_FP_CLASS) && defined(HAVE_FP_CLASS_H)) +#if (! defined(HAVE_ISINF) && defined(HAVE_FP_CLASS) && defined(HAVE_FP_CLASS_H) && defined(FP_NEG_INF) && defined( FP_POS_INF)) # define HAVE_ISINF 1 # define isinf(a) (fp_class(a) == FP_NEG_INF || fp_class(a) == FP_POS_INF) #endif