Skip to content

Starmapping too many times crashes rustpython.  #4317

@xiaxinmeng

Description

@xiaxinmeng

In the following example, b is an empty list, we execute starmap() on b for 100000, then rustpython crashes with segmentation fault. This case can work well on CPython 3.9.1.

test.py:

from operator import add
from itertools import starmap
b=[]
for i in range(100000):
    b = starmap(i, zip(b, b))
list(b)

Behavior on rustpython(rustpython 0.1.2):
Segmentation fault: 11

Behavior on CPython 3.9.1(Expected):
work well on the python interpreter(work well on Python 3.9.1)

Step to reproduce:
type "cargo run --release test.py" on the console of Ubuntu 18.04 or MacOS Big Sur 11.7.1
rust version: rustc 1.65.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions