diff src/macros.h @ 8295:18fd94bd4eb8 v7.4.1440

commit https://github.com/vim/vim/commit/fefecb0fbe14c44d46f91036d76bbb6c28162da8 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Feb 27 21:27:20 2016 +0100 patch 7.4.1440 Problem: Can't build on Windows. Solution: Change #ifdefs. Only define isnan when used.
author Christian Brabandt <cb@256bit.org>
date Sat, 27 Feb 2016 21:30:05 +0100
parents 6ae3fb4fe7c1
children 2230c0da23bd
line wrap: on
line diff
--- a/src/macros.h
+++ b/src/macros.h
@@ -327,25 +327,29 @@
    /* for isnan() and isinf() */
 #  include <math.h>
 # endif
-# if defined(WIN32) && !defined(isnan)
-#  define isnan(x) _isnan(x)
-#  define isinf(x) (!_finite(x) && !_isnan(x))
-# else
-#  ifndef HAVE_ISNAN
-    static inline int isnan(double x) { return x != x; }
+# ifdef USING_FLOAT_STUFF
+#  if defined(WIN32)
+#   ifndef isnan
+#    define isnan(x) _isnan(x)
+#    define isinf(x) (!_finite(x) && !_isnan(x))
+#   endif
+#  else
+#   ifndef HAVE_ISNAN
+     static inline int isnan(double x) { return x != x; }
+#   endif
+#   ifndef HAVE_ISINF
+     static inline int isinf(double x) { return !isnan(x) && isnan(x - x); }
+#   endif
 #  endif
-#  ifndef HAVE_ISINF
-    static inline int isinf(double x) { return !isnan(x) && isnan(x - x); }
+#  if !defined(INFINITY)
+#   if defined(DBL_MAX)
+#    define INFINITY (DBL_MAX+DBL_MAX)
+#   else
+#    define INFINITY (1.0 / 0.0)
+#   endif
+#  endif
+#  if !defined(NAN)
+#   define NAN (INFINITY-INFINITY)
 #  endif
 # endif
-# if !defined(INFINITY)
-#  if defined(DBL_MAX)
-#   define INFINITY (DBL_MAX+DBL_MAX)
-#  else
-#   define INFINITY (1.0 / 0.0)
-#  endif
-# endif
-# if !defined(NAN)
-#  define NAN (INFINITY-INFINITY)
-# endif
 #endif