glimits.h revision 50397
10SN/A#ifndef _LIMITS_H___ 213029Sbobv#ifndef _MACH_MACHLIMITS_H_ 30SN/A 40SN/A/* _MACH_MACHLIMITS_H_ is used on OSF/1. */ 50SN/A#define _LIMITS_H___ 60SN/A#define _MACH_MACHLIMITS_H_ 72362SN/A 80SN/A/* Number of bits in a `char'. */ 92362SN/A#undef CHAR_BIT 100SN/A#define CHAR_BIT 8 110SN/A 120SN/A/* Maximum length of a multibyte character. */ 130SN/A#ifndef MB_LEN_MAX 140SN/A#define MB_LEN_MAX 1 150SN/A#endif 160SN/A 170SN/A/* Minimum and maximum values a `signed char' can hold. */ 180SN/A#undef SCHAR_MIN 190SN/A#define SCHAR_MIN (-128) 200SN/A#undef SCHAR_MAX 212362SN/A#define SCHAR_MAX 127 222362SN/A 232362SN/A/* Maximum value an `unsigned char' can hold. (Minimum is 0). */ 240SN/A#undef UCHAR_MAX 250SN/A#define UCHAR_MAX 255 260SN/A 270SN/A/* Minimum and maximum values a `char' can hold. */ 280SN/A#ifdef __CHAR_UNSIGNED__ 290SN/A#undef CHAR_MIN 300SN/A#define CHAR_MIN 0 310SN/A#undef CHAR_MAX 320SN/A#define CHAR_MAX 255 330SN/A#else 340SN/A#undef CHAR_MIN 350SN/A#define CHAR_MIN (-128) 360SN/A#undef CHAR_MAX 370SN/A#define CHAR_MAX 127 380SN/A#endif 390SN/A 400SN/A/* Minimum and maximum values a `signed short int' can hold. */ 410SN/A#undef SHRT_MIN 420SN/A/* For the sake of 16 bit hosts, we may not use -32768 */ 430SN/A#define SHRT_MIN (-32767-1) 440SN/A#undef SHRT_MAX 450SN/A#define SHRT_MAX 32767 460SN/A 470SN/A/* Maximum value an `unsigned short int' can hold. (Minimum is 0). */ 480SN/A#undef USHRT_MAX 490SN/A#define USHRT_MAX 65535 5010117SN/A 5110117SN/A/* Minimum and maximum values a `signed int' can hold. */ 5210117SN/A#ifndef __INT_MAX__ 5310117SN/A#define __INT_MAX__ 2147483647 5410117SN/A#endif 5510117SN/A#undef INT_MIN 560SN/A#define INT_MIN (-INT_MAX-1) 570SN/A#undef INT_MAX 580SN/A#define INT_MAX __INT_MAX__ 590SN/A 600SN/A/* Maximum value an `unsigned int' can hold. (Minimum is 0). */ 610SN/A#undef UINT_MAX 620SN/A#define UINT_MAX (INT_MAX * 2U + 1) 630SN/A 640SN/A/* Minimum and maximum values a `signed long int' can hold. 650SN/A (Same as `int'). */ 660SN/A#ifndef __LONG_MAX__ 670SN/A#if defined (__alpha__) || (defined (__sparc_v9__) && defined (__arch64__)) 680SN/A#define __LONG_MAX__ 9223372036854775807L 690SN/A#else 7013029Sbobv#define __LONG_MAX__ 2147483647L 710SN/A#endif /* __alpha__ || sparc64 */ 720SN/A#endif 730SN/A#undef LONG_MIN 740SN/A#define LONG_MIN (-LONG_MAX-1) 750SN/A#undef LONG_MAX 760SN/A#define LONG_MAX __LONG_MAX__ 770SN/A 780SN/A/* Maximum value an `unsigned long int' can hold. (Minimum is 0). */ 790SN/A#undef ULONG_MAX 800SN/A#define ULONG_MAX (LONG_MAX * 2UL + 1) 810SN/A 820SN/A#if defined (__GNU_LIBRARY__) ? defined (__USE_GNU) : !defined (__STRICT_ANSI__) 830SN/A/* Minimum and maximum values a `signed long long int' can hold. */ 840SN/A#ifndef __LONG_LONG_MAX__ 850SN/A#define __LONG_LONG_MAX__ 9223372036854775807LL 860SN/A#endif 870SN/A#undef LONG_LONG_MIN 880SN/A#define LONG_LONG_MIN (-LONG_LONG_MAX-1) 890SN/A#undef LONG_LONG_MAX 900SN/A#define LONG_LONG_MAX __LONG_LONG_MAX__ 910SN/A 920SN/A/* Maximum value an `unsigned long long int' can hold. (Minimum is 0). */ 930SN/A#undef ULONG_LONG_MAX 940SN/A#define ULONG_LONG_MAX (LONG_LONG_MAX * 2ULL + 1) 950SN/A#endif 960SN/A 970SN/A#endif /* _MACH_MACHLIMITS_H_ */ 980SN/A#endif /* _LIMITS_H___ */ 990SN/A