@@ -48,11 +48,8 @@ meaning otherwise.
4848#define PyDict_MINSIZE 8
4949
5050typedef struct {
51- /* Cached hash code of me_key. Note that hash codes are C longs.
52- * We have to use Py_ssize_t instead because dict_popitem() abuses
53- * me_hash to hold a search finger.
54- */
55- Py_ssize_t me_hash ;
51+ /* Cached hash code of me_key. */
52+ Py_hash_t me_hash ;
5653 PyObject * me_key ;
5754 PyObject * me_value ;
5855} PyDictEntry ;
@@ -84,7 +81,7 @@ struct _dictobject {
8481 * setitem calls.
8582 */
8683 PyDictEntry * ma_table ;
87- PyDictEntry * (* ma_lookup )(PyDictObject * mp , PyObject * key , long hash );
84+ PyDictEntry * (* ma_lookup )(PyDictObject * mp , PyObject * key , Py_hash_t hash );
8885 PyDictEntry ma_smalltable [PyDict_MINSIZE ];
8986};
9087
@@ -116,14 +113,14 @@ PyAPI_FUNC(void) PyDict_Clear(PyObject *mp);
116113PyAPI_FUNC (int ) PyDict_Next (
117114 PyObject * mp , Py_ssize_t * pos , PyObject * * key , PyObject * * value );
118115PyAPI_FUNC (int ) _PyDict_Next (
119- PyObject * mp , Py_ssize_t * pos , PyObject * * key , PyObject * * value , long * hash );
116+ PyObject * mp , Py_ssize_t * pos , PyObject * * key , PyObject * * value , Py_hash_t * hash );
120117PyAPI_FUNC (PyObject * ) PyDict_Keys (PyObject * mp );
121118PyAPI_FUNC (PyObject * ) PyDict_Values (PyObject * mp );
122119PyAPI_FUNC (PyObject * ) PyDict_Items (PyObject * mp );
123120PyAPI_FUNC (Py_ssize_t ) PyDict_Size (PyObject * mp );
124121PyAPI_FUNC (PyObject * ) PyDict_Copy (PyObject * mp );
125122PyAPI_FUNC (int ) PyDict_Contains (PyObject * mp , PyObject * key );
126- PyAPI_FUNC (int ) _PyDict_Contains (PyObject * mp , PyObject * key , long hash );
123+ PyAPI_FUNC (int ) _PyDict_Contains (PyObject * mp , PyObject * key , Py_hash_t hash );
127124PyAPI_FUNC (PyObject * ) _PyDict_NewPresized (Py_ssize_t minused );
128125PyAPI_FUNC (void ) _PyDict_MaybeUntrack (PyObject * mp );
129126PyAPI_FUNC (int ) _PyDict_HasOnlyStringKeys (PyObject * mp );
0 commit comments