@@ -29,7 +29,7 @@ dtypes = [('Float64', 'float64', 'float64_t'),
2929
3030ctypedef struct {{name}}VectorData:
3131 {{arg}} *data
32- size_t n, m
32+ Py_ssize_t n, m
3333
3434{{endif}}
3535
@@ -147,7 +147,7 @@ cdef class StringVector:
147147 cdef resize(self):
148148 cdef:
149149 char **orig_data
150- size_t i, m
150+ Py_ssize_t i, m
151151
152152 m = self.data.m
153153 self.data.m = max(self.data.m * 4, _INIT_VEC_CAP)
@@ -172,7 +172,7 @@ cdef class StringVector:
172172 def to_array(self):
173173 cdef:
174174 ndarray ao
175- size_t n
175+ Py_ssize_t n
176176 object val
177177
178178 ao = np.empty(self.data.n, dtype=np.object)
@@ -198,7 +198,7 @@ cdef class ObjectVector:
198198
199199 cdef:
200200 PyObject **data
201- size_t n, m
201+ Py_ssize_t n, m
202202 ndarray ao
203203 bint external_view_exists
204204
@@ -281,7 +281,7 @@ cdef class {{name}}HashTable(HashTable):
281281 def sizeof(self, deep=False):
282282 """ return the size of my table in bytes """
283283 return self.table.n_buckets * (sizeof({{dtype}}_t) + # keys
284- sizeof(size_t ) + # vals
284+ sizeof(Py_ssize_t ) + # vals
285285 sizeof(uint32_t)) # flags
286286
287287 cpdef get_item(self, {{dtype}}_t val):
@@ -522,13 +522,13 @@ cdef class StringHashTable(HashTable):
522522 def sizeof(self, deep=False):
523523 """ return the size of my table in bytes """
524524 return self.table.n_buckets * (sizeof(char *) + # keys
525- sizeof(size_t ) + # vals
525+ sizeof(Py_ssize_t ) + # vals
526526 sizeof(uint32_t)) # flags
527527
528528 cpdef get_item(self, object val):
529529 cdef:
530530 khiter_t k
531- char *v
531+ const char *v
532532 v = util.get_c_string(val)
533533
534534 k = kh_get_str(self.table, v)
@@ -541,7 +541,7 @@ cdef class StringHashTable(HashTable):
541541 cdef:
542542 khiter_t k
543543 int ret = 0
544- char *v
544+ const char *v
545545
546546 v = util.get_c_string(val)
547547
@@ -560,10 +560,10 @@ cdef class StringHashTable(HashTable):
560560 int64_t *resbuf = <int64_t*> labels.data
561561 khiter_t k
562562 kh_str_t *table = self.table
563- char *v
564- char **vecs
563+ const char *v
564+ const char **vecs
565565
566- vecs = <char **> malloc(n * sizeof(char *))
566+ vecs = <const char **> malloc(n * sizeof(char *))
567567 for i in range(n):
568568 val = values[i]
569569 v = util.get_c_string(val)
@@ -589,10 +589,10 @@ cdef class StringHashTable(HashTable):
589589 object val
590590 ObjectVector uniques
591591 khiter_t k
592- char *v
593- char **vecs
592+ const char *v
593+ const char **vecs
594594
595- vecs = <char **> malloc(n * sizeof(char *))
595+ vecs = <const char **> malloc(n * sizeof(char *))
596596 uindexer = np.empty(n, dtype=np.int64)
597597 for i in range(n):
598598 val = values[i]
@@ -627,7 +627,7 @@ cdef class StringHashTable(HashTable):
627627 Py_ssize_t i, n = len(values)
628628 int ret = 0
629629 object val
630- char *v
630+ const char *v
631631 khiter_t k
632632 int64_t[:] locs = np.empty(n, dtype=np.int64)
633633
@@ -660,12 +660,12 @@ cdef class StringHashTable(HashTable):
660660 Py_ssize_t i, n = len(values)
661661 int ret = 0
662662 object val
663- char *v
664- char **vecs
663+ const char *v
664+ const char **vecs
665665 khiter_t k
666666
667667 # these by-definition *must* be strings
668- vecs = <char **> malloc(n * sizeof(char *))
668+ vecs = <const char **> malloc(n * sizeof(char *))
669669 for i in range(n):
670670 val = values[i]
671671
@@ -693,8 +693,8 @@ cdef class StringHashTable(HashTable):
693693 Py_ssize_t idx, count = count_prior
694694 int ret = 0
695695 object val
696- char *v
697- char **vecs
696+ const char *v
697+ const char **vecs
698698 khiter_t k
699699 bint use_na_value
700700
@@ -705,7 +705,7 @@ cdef class StringHashTable(HashTable):
705705
706706 # pre-filter out missing
707707 # and assign pointers
708- vecs = <char **> malloc(n * sizeof(char *))
708+ vecs = <const char **> malloc(n * sizeof(char *))
709709 for i in range(n):
710710 val = values[i]
711711
@@ -769,7 +769,7 @@ cdef class PyObjectHashTable(HashTable):
769769 def sizeof(self, deep=False):
770770 """ return the size of my table in bytes """
771771 return self.table.n_buckets * (sizeof(PyObject *) + # keys
772- sizeof(size_t ) + # vals
772+ sizeof(Py_ssize_t ) + # vals
773773 sizeof(uint32_t)) # flags
774774
775775 cpdef get_item(self, object val):
0 commit comments