summaryrefslogtreecommitdiffstats
path: root/Include/pyport.h
diff options
context:
space:
mode:
authorFred Drake <fdrake@acm.org>2000-09-26 05:46:01 (GMT)
committerFred Drake <fdrake@acm.org>2000-09-26 05:46:01 (GMT)
commitd5fadf75e4d18df61db41205ace0cda28d98eeaa (patch)
tree1b82c40e9bacf707cc8411fb9f0b6816c6f857d4 /Include/pyport.h
parent1b6185941ee5ccbfb7bb79ef2fcd55e279ade902 (diff)
downloadcpython-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.h32
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