diff options
author | Fred Drake <fdrake@acm.org> | 2000-09-26 05:46:01 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 2000-09-26 05:46:01 (GMT) |
commit | d5fadf75e4d18df61db41205ace0cda28d98eeaa (patch) | |
tree | 1b82c40e9bacf707cc8411fb9f0b6816c6f857d4 /Include/pyport.h | |
parent | 1b6185941ee5ccbfb7bb79ef2fcd55e279ade902 (diff) | |
download | cpython-d5fadf75e4d18df61db41205ace0cda28d98eeaa.zip cpython-d5fadf75e4d18df61db41205ace0cda28d98eeaa.tar.gz cpython-d5fadf75e4d18df61db41205ace0cda28d98eeaa.tar.bz2 |
Rationalize use of limits.h, moving the inclusion to Python.h.
Add definitions of INT_MAX and LONG_MAX to pyport.h.
Remove includes of limits.h and conditional definitions of INT_MAX
and LONG_MAX elsewhere.
This closes SourceForge patch #101659 and bug #115323.
Diffstat (limited to 'Include/pyport.h')
-rw-r--r-- | Include/pyport.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/Include/pyport.h b/Include/pyport.h index 48cd45b..4914886 100644 --- a/Include/pyport.h +++ b/Include/pyport.h @@ -354,6 +354,38 @@ typedef struct fd_set { #endif /* fd manipulation macros */ +/* limits.h constants that may be missing */ + +#ifndef INT_MAX +#define INT_MAX 2147483647 +#endif + +#ifndef LONG_MAX +#if SIZEOF_LONG == 4 +#define LONG_MAX 0X7FFFFFFFL +#elif SIZEOF_LONG == 8 +#define LONG_MAX 0X7FFFFFFFFFFFFFFFL +#else +#error "could not set LONG_MAX in pyport.h" +#endif +#endif + +#ifndef LONG_MIN +#define LONG_MIN (-LONG_MAX-1) +#endif + +#ifdef __NeXT__ +#ifdef __sparc__ +/* + * This works around a bug in the NS/Sparc 3.3 pre-release + * limits.h header file. + * 10-Feb-1995 bwarsaw@cnri.reston.va.us + */ +#undef LONG_MIN +#define LONG_MIN (-LONG_MAX-1) +#endif +#endif + #ifdef __cplusplus } #endif |