0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

patch 7.4.1440

Problem:    Can't build on Windows.
Solution:   Change #ifdefs.  Only define isnan when used.
This commit is contained in:
Bram Moolenaar 2016-02-27 21:27:20 +01:00
parent f97ddbeb25
commit fefecb0fbe
4 changed files with 26 additions and 18 deletions

View File

@ -10,6 +10,7 @@
/*
* eval.c: Expression evaluation.
*/
#define USING_FLOAT_STUFF
#include "vim.h"

View File

@ -12,6 +12,7 @@
*
* Follows this standard: https://tools.ietf.org/html/rfc7159.html
*/
#define USING_FLOAT_STUFF
#include "vim.h"

View File

@ -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; }
# endif
# ifndef HAVE_ISINF
static inline int isinf(double x) { return !isnan(x) && isnan(x - x); }
# endif
# endif
# if !defined(INFINITY)
# if defined(DBL_MAX)
# define INFINITY (DBL_MAX+DBL_MAX)
# ifdef USING_FLOAT_STUFF
# if defined(WIN32)
# ifndef isnan
# define isnan(x) _isnan(x)
# define isinf(x) (!_finite(x) && !_isnan(x))
# endif
# else
# define INFINITY (1.0 / 0.0)
# 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
# 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(NAN)
# define NAN (INFINITY-INFINITY)
# endif
#endif

View File

@ -743,6 +743,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1440,
/**/
1439,
/**/