*.c: Use the new `Py_hash_t' type.
authorMark Wooding <mdw@distorted.org.uk>
Sun, 20 Oct 2019 23:33:22 +0000 (00:33 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Sat, 11 Apr 2020 11:44:14 +0000 (12:44 +0100)
pyke.h

diff --git a/pyke.h b/pyke.h
index b6a5d8d..6c4e4e1 100644 (file)
--- a/pyke.h
+++ b/pyke.h
@@ -82,6 +82,13 @@ PRIVATE_SYMBOLS;
 #  define PyVarObject_HEAD_INIT(super, sz) PyObject_HEAD_INIT(super) sz,
 #endif
 
 #  define PyVarObject_HEAD_INIT(super, sz) PyObject_HEAD_INIT(super) sz,
 #endif
 
+/* Python 3.2 changed the type of hash values, so paper over this annoying
+ * difference.
+ */
+#if PY_VERSION_HEX < 0x03020000
+  typedef long Py_hash_t;
+#endif
+
 /*----- Utilities for returning values and exceptions ---------------------*/
 
 /* Returning values. */
 /*----- Utilities for returning values and exceptions ---------------------*/
 
 /* Returning values. */