comparison src/structs.h @ 9389:32e34e574716 v7.4.1976

commit https://github.com/vim/vim/commit/22fcfad29276bd5f317faf516637dcd491b96a12 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jul 1 18:17:26 2016 +0200 patch 7.4.1976 Problem: Number variables are not 64 bits while they could be. Solution: Add the num64 feature. (Ken Takata)
author Christian Brabandt <cb@256bit.org>
date Fri, 01 Jul 2016 18:30:07 +0200
parents f094d4085014
children 1003973c99df
comparison
equal deleted inserted replaced
9388:404ac7af0e7e 9389:32e34e574716
1109 } hashtab_T; 1109 } hashtab_T;
1110 1110
1111 typedef long_u hash_T; /* Type for hi_hash */ 1111 typedef long_u hash_T; /* Type for hi_hash */
1112 1112
1113 1113
1114 #if VIM_SIZEOF_INT <= 3 /* use long if int is smaller than 32 bits */ 1114 #ifdef FEAT_NUM64
1115 typedef long varnumber_T; 1115 /* Use 64-bit Number. */
1116 # ifdef WIN3264
1117 typedef __int64 varnumber_T;
1118 typedef unsigned __int64 uvarnumber_T;
1119 # elif defined(HAVE_STDINT_H)
1120 typedef int64_t varnumber_T;
1121 typedef uint64_t uvarnumber_T;
1122 # else
1123 typedef long varnumber_T;
1124 typedef unsigned long uvarnumber_T;
1125 # endif
1116 #else 1126 #else
1117 typedef int varnumber_T; 1127 /* Use 32-bit Number. */
1118 #endif 1128 # if VIM_SIZEOF_INT <= 3 /* use long if int is smaller than 32 bits */
1129 typedef long varnumber_T;
1130 typedef unsigned long uvarnumber_T;
1131 # else
1132 typedef int varnumber_T;
1133 typedef unsigned int uvarnumber_T;
1134 # endif
1135 #endif
1136
1119 typedef double float_T; 1137 typedef double float_T;
1120 1138
1121 typedef struct listvar_S list_T; 1139 typedef struct listvar_S list_T;
1122 typedef struct dictvar_S dict_T; 1140 typedef struct dictvar_S dict_T;
1123 typedef struct partial_S partial_T; 1141 typedef struct partial_S partial_T;