Mercurial > vim
diff src/structs.h @ 19427:fdfe44ac6a1a v8.2.0271
patch 8.2.0271: the "num64" feature is available everywhere
Commit: https://github.com/vim/vim/commit/82f654e092ac5b86316bc1b30c0b07a849813186
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Feb 17 22:12:50 2020 +0100
patch 8.2.0271: the "num64" feature is available everywhere
Problem: The "num64" feature is available everywhere and building without
it causes problems.
Solution: Graduage the "num64" feature. (James McCoy, closes #5650)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Mon, 17 Feb 2020 22:15:07 +0100 |
parents | e99e6d794597 |
children | 2bb0e80fcd32 |
line wrap: on
line diff
--- a/src/structs.h +++ b/src/structs.h @@ -1245,42 +1245,33 @@ typedef struct hashtable_S typedef long_u hash_T; // Type for hi_hash -#ifdef FEAT_NUM64 // Use 64-bit Number. -# ifdef MSWIN -# ifdef PROTO -typedef long varnumber_T; -typedef unsigned long uvarnumber_T; -# define VARNUM_MIN LONG_MIN -# define VARNUM_MAX LONG_MAX -# define UVARNUM_MAX ULONG_MAX -# else -typedef __int64 varnumber_T; -typedef unsigned __int64 uvarnumber_T; -# define VARNUM_MIN _I64_MIN -# define VARNUM_MAX _I64_MAX -# define UVARNUM_MAX _UI64_MAX -# endif -# elif defined(HAVE_STDINT_H) -typedef int64_t varnumber_T; -typedef uint64_t uvarnumber_T; -# define VARNUM_MIN INT64_MIN -# define VARNUM_MAX INT64_MAX -# define UVARNUM_MAX UINT64_MAX -# else +#ifdef MSWIN +# ifdef PROTO typedef long varnumber_T; typedef unsigned long uvarnumber_T; # define VARNUM_MIN LONG_MIN # define VARNUM_MAX LONG_MAX # define UVARNUM_MAX ULONG_MAX +# else +typedef __int64 varnumber_T; +typedef unsigned __int64 uvarnumber_T; +# define VARNUM_MIN _I64_MIN +# define VARNUM_MAX _I64_MAX +# define UVARNUM_MAX _UI64_MAX # endif +#elif defined(HAVE_STDINT_H) +typedef int64_t varnumber_T; +typedef uint64_t uvarnumber_T; +# define VARNUM_MIN INT64_MIN +# define VARNUM_MAX INT64_MAX +# define UVARNUM_MAX UINT64_MAX #else -// Use 32-bit Number. -typedef int varnumber_T; -typedef unsigned int uvarnumber_T; -# define VARNUM_MIN INT_MIN -# define VARNUM_MAX INT_MAX -# define UVARNUM_MAX UINT_MAX +typedef long varnumber_T; +typedef unsigned long uvarnumber_T; +# define VARNUM_MIN LONG_MIN +# define VARNUM_MAX LONG_MAX +# define UVARNUM_MAX ULONG_MAX #endif typedef double float_T;