From 47a6d1ac3e2f567ab02e0d38a69760eff1a78268 Mon Sep 17 00:00:00 2001 From: rth Date: Fri, 6 Jul 2001 21:44:58 +0000 Subject: * glimits.h (__SHRT_MAX__): New. (SHRT_MIN, USHRT_MAX): Define in terms of SHRT_MAX. (SHRT_MAX): Define in terms of __SHRT_MAX__. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43825 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/glimits.h | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'gcc/glimits.h') diff --git a/gcc/glimits.h b/gcc/glimits.h index f0cb0a3bba4..bdf7e31ad38 100644 --- a/gcc/glimits.h +++ b/gcc/glimits.h @@ -37,12 +37,15 @@ #define CHAR_MAX 127 #endif +#ifndef __SHRT_MAX__ +#define __SHRT_MAX__ 32767 +#endif + /* Minimum and maximum values a `signed short int' can hold. */ #undef SHRT_MIN -/* For the sake of 16 bit hosts, we may not use -32768 */ -#define SHRT_MIN (-32767-1) +#define SHRT_MIN (-SHRT_MAX-1) #undef SHRT_MAX -#define SHRT_MAX 32767 +#define SHRT_MAX __SHRT_MAX__ /* Minimum and maximum values a `signed int' can hold. */ #ifndef __INT_MAX__ @@ -55,10 +58,10 @@ /* Maximum value an `unsigned short int' can hold. (Minimum is 0). */ #undef USHRT_MAX -#if INT_MAX < 65535 -#define USHRT_MAX 65535U +#if __SHRT_MAX__ == __INT_MAX__ +#define USHRT_MAX (SHRT_MAX * 2U + 1U) #else -#define USHRT_MAX 65535 +#define USHRT_MAX (SHRT_MAX * 2 + 1) #endif /* Maximum value an `unsigned int' can hold. (Minimum is 0). */ -- cgit v1.2.1