Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 77fa937

Browse files
committed
use Py_ssize_t for ast sequence lengths
1 parent c5f31ed commit 77fa937

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

Parser/asdl_c.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -784,7 +784,7 @@ def visitModule(self, mod):
784784
785785
static PyObject* ast2obj_list(asdl_seq *seq, PyObject* (*func)(void*))
786786
{
787-
int i, n = asdl_seq_LEN(seq);
787+
Py_ssize_t i, n = asdl_seq_LEN(seq);
788788
PyObject *result = PyList_New(n);
789789
PyObject *value;
790790
if (!result)
@@ -1106,7 +1106,7 @@ def set(self, field, value, depth):
11061106
# While the sequence elements are stored as void*,
11071107
# ast2obj_cmpop expects an enum
11081108
self.emit("{", depth)
1109-
self.emit("int i, n = asdl_seq_LEN(%s);" % value, depth+1)
1109+
self.emit("Py_ssize_t i, n = asdl_seq_LEN(%s);" % value, depth+1)
11101110
self.emit("value = PyList_New(n);", depth+1)
11111111
self.emit("if (!value) goto failed;", depth+1)
11121112
self.emit("for(i = 0; i < n; i++)", depth+1)

Python/Python-ast.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -636,7 +636,7 @@ static int add_attributes(PyTypeObject* type, char**attrs, int num_fields)
636636

637637
static PyObject* ast2obj_list(asdl_seq *seq, PyObject* (*func)(void*))
638638
{
639-
int i, n = asdl_seq_LEN(seq);
639+
Py_ssize_t i, n = asdl_seq_LEN(seq);
640640
PyObject *result = PyList_New(n);
641641
PyObject *value;
642642
if (!result)
@@ -2857,7 +2857,7 @@ ast2obj_expr(void* _o)
28572857
goto failed;
28582858
Py_DECREF(value);
28592859
{
2860-
int i, n = asdl_seq_LEN(o->v.Compare.ops);
2860+
Py_ssize_t i, n = asdl_seq_LEN(o->v.Compare.ops);
28612861
value = PyList_New(n);
28622862
if (!value) goto failed;
28632863
for(i = 0; i < n; i++)

0 commit comments

Comments
 (0)