Include limits.h if we have it.
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index bbd9969..82867e0 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -23,6 +23,9 @@
#ifdef HAVE_UNISTD_H
#include <unistd.h>
#endif
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
/* Forward */
static PyObject *filterstring Py_PROTO((PyObject *, PyObject *));
diff --git a/Python/codecs.c b/Python/codecs.c
index 20df522..27331ab 100644
--- a/Python/codecs.c
+++ b/Python/codecs.c
@@ -10,6 +10,9 @@
#include "Python.h"
#include <ctype.h>
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
/* --- Globals ------------------------------------------------------------ */
diff --git a/Python/compile.c b/Python/compile.c
index d713c7e..ce7c0e4 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -33,6 +33,9 @@
#include "structmember.h"
#include <ctype.h>
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
/* Three symbols from graminit.h are also defined in Python.h, with
Py_ prefixes to their names. Python.h can't include graminit.h
diff --git a/Python/modsupport.c b/Python/modsupport.c
index 4a206a1..afecc0e 100644
--- a/Python/modsupport.c
+++ b/Python/modsupport.c
@@ -11,6 +11,9 @@
/* Module support implementation */
#include "Python.h"
+#ifdef HAVE_LIMITS_H
+#include <limits.h>
+#endif
#ifdef MPW /* MPW pushes 'extended' for float and double types with varargs */
typedef extended va_double;