From 2af72d5d6d25949bcdeb03dd38d9f8753f33d6b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20v=2E=20L=C3=B6wis?= Date: Fri, 15 Sep 2000 08:10:33 +0000 Subject: Use symbolic constants for allowable short ranges. --- Modules/structmodule.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/Modules/structmodule.c b/Modules/structmodule.c index 1b38c67..4d60122 100644 --- a/Modules/structmodule.c +++ b/Modules/structmodule.c @@ -66,6 +66,8 @@ typedef struct { char c; void *x; } s_void_p; #define DOUBLE_ALIGN (sizeof(s_double) - sizeof(double)) #define VOID_P_ALIGN (sizeof(s_void_p) - sizeof(void *)) +#define STRINGIFY(x) #x + #ifdef __powerc #pragma options align=reset #endif @@ -519,9 +521,10 @@ np_short(char *p, PyObject *v, const formatdef *f) long x; if (get_long(v, &x) < 0) return -1; - if (x < -32768 || x > 32767){ + if (x < SHRT_MIN || x > SHRT_MAX){ PyErr_SetString(StructError, - "short format requires -32768<=number<=32767"); + "short format requires " STRINGIFY(SHRT_MIN) + "<=number<=" STRINGIFY(SHRT_MAX)); return -1; } * (short *)p = (short)x; @@ -534,9 +537,9 @@ np_ushort(char *p, PyObject *v, const formatdef *f) long x; if (get_long(v, &x) < 0) return -1; - if (x < 0 || x > 65535){ + if (x < 0 || x > USHRT_MAX){ PyErr_SetString(StructError, - "short format requires 0<=number<=65535"); + "short format requires 0<=number<=" STRINGIFY(USHRT_MAX)); return -1; } * (unsigned short *)p = (unsigned short)x; -- cgit v0.12