New submission from Serhiy Storchaka <storchaka+cpyt...@gmail.com>: Python 2 can crash when compile long expression.
>>> x = eval('""' + '+chr(33)'*100000) Segmentation fault (core dumped) This was fixed in Python 3. RecursionError is raised now. >>> x = eval('""' + '+chr(33)'*100000) Traceback (most recent call last): File "<stdin>", line 1, in <module> RecursionError: maximum recursion depth exceeded during compilation >>> x = eval('+chr(33)'*1000000) Traceback (most recent call last): File "<stdin>", line 1, in <module> RecursionError: maximum recursion depth exceeded during compilation But compiling to AST still can crash. >>> import ast >>> x = ast.parse('+chr(33)'*1000000) Segmentation fault (core dumped) ---------- components: Interpreter Core messages: 311568 nosy: benjamin.peterson, brett.cannon, ncoghlan, serhiy.storchaka, yselivanov priority: normal severity: normal status: open title: Stack overflow when parse long expression to AST type: crash versions: Python 3.6, Python 3.7, Python 3.8 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue32758> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com