summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2006-04-05 18:21:17 (GMT)
committerMartin v. Löwis <martin@v.loewis.de>2006-04-05 18:21:17 (GMT)
commitc48c8db110fd5e3b1f8574e8e52f85d11d4c4fd4 (patch)
treec5d2449b26acb2b283e2a54c27875c3a6eafaf77
parent726dcf34a6cfa95e083d9e020752be4cab29672d (diff)
downloadcpython-c48c8db110fd5e3b1f8574e8e52f85d11d4c4fd4.zip
cpython-c48c8db110fd5e3b1f8574e8e52f85d11d4c4fd4.tar.gz
cpython-c48c8db110fd5e3b1f8574e8e52f85d11d4c4fd4.tar.bz2
Add PY_SSIZE_T_MIN, as suggested by Ralf W. Grosse-Kunstleve.
-rw-r--r--Include/pyport.h2
-rw-r--r--Objects/longobject.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/Include/pyport.h b/Include/pyport.h
index 9b5c54d..e0d9b7d 100644
--- a/Include/pyport.h
+++ b/Include/pyport.h
@@ -99,6 +99,8 @@ typedef Py_intptr_t Py_ssize_t;
/* Largest positive value of type Py_ssize_t. */
#define PY_SSIZE_T_MAX ((Py_ssize_t)(((size_t)-1)>>1))
+/* Smallest positive value of type Py_ssize_t. */
+#define PY_SSIZE_T_MIN (-PY_SSIZE_T_MAX-1)
/* PY_FORMAT_SIZE_T is a platform-specific modifier for use in a printf
* format to convert an argument with the width of a size_t or Py_ssize_t.
diff --git a/Objects/longobject.c b/Objects/longobject.c
index ebcce45c..26f78c2 100644
--- a/Objects/longobject.c
+++ b/Objects/longobject.c
@@ -281,7 +281,7 @@ _long_as_ssize_t(PyObject *vv) {
if (sign > 0)
return PY_SSIZE_T_MAX;
else
- return -PY_SSIZE_T_MAX-1;
+ return PY_SSIZE_T_MIN;
}
/* Get a Py_ssize_t from a long int object.