diff options
Diffstat (limited to 'gnulib/import/isnanl-nolibm.h')
-rw-r--r-- | gnulib/import/isnanl-nolibm.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gnulib/import/isnanl-nolibm.h b/gnulib/import/isnanl-nolibm.h index c45e3ab2c7b..103d31a7066 100644 --- a/gnulib/import/isnanl-nolibm.h +++ b/gnulib/import/isnanl-nolibm.h @@ -17,7 +17,10 @@ #if HAVE_ISNANL_IN_LIBC /* Get declaration of isnan macro or (older) isnanl function. */ # include <math.h> -# if __GNUC__ >= 4 +# ifndef __has_builtin +# define __has_builtin(name) 0 +# endif +# if __GNUC__ >= 4 && (!defined __clang__ || __has_builtin (__builtin_isnanl)) /* GCC 4.0 and newer provides three built-ins for isnan. */ # undef isnanl # define isnanl(x) __builtin_isnanl ((long double)(x)) |