summaryrefslogtreecommitdiffstats
path: root/src/structs.h
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2020-04-08 11:31:48 +0200
committerBram Moolenaar <Bram@vim.org>2020-04-08 11:31:48 +0200
commita65c28813425dc1c04424ee18980d1733e982604 (patch)
tree4f5346196465f291764b37b3569d65de0bb9aaf5 /src/structs.h
parent49cf7cc8d2df1509cbe23647166c6cc954d59513 (diff)
patch 8.2.0530: test crashes on s390v8.2.0530
Problem: Test crashes on s390. (James McCoy) Solution: Explicitly define an 8 big signed type. (closes #5897)
Diffstat (limited to 'src/structs.h')
-rw-r--r--src/structs.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/structs.h b/src/structs.h
index 46e27012c8..851ee6310e 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1290,6 +1290,10 @@ typedef long_u hash_T; // Type for hi_hash
# endif
#endif
+// On rare systems "char" is unsigned, sometimes we really want a signed 8-bit
+// value.
+typedef signed char int8_T;
+
typedef double float_T;
typedef struct listvar_S list_T;
@@ -1342,7 +1346,7 @@ typedef enum
typedef struct type_S type_T;
struct type_S {
vartype_T tt_type;
- char tt_argcount; // for func, -1 for unknown
+ int8_T tt_argcount; // for func, -1 for unknown
char tt_min_argcount; // number of non-optional arguments
char tt_flags; // TTFLAG_ values
type_T *tt_member; // for list, dict, func return type