You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Traceback (most recent call last):
File "pylint/pylint/lint/pylinter.py", line 993, in get_ast
return MANAGER.ast_from_file(filepath, modname, source=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/manager.py", line 165, in ast_from_file
return AstroidBuilder(self).file_build(filepath, modname)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/builder.py", line 144, in file_build
module, builder = self._data_build(data, modname, path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/builder.py", line 206, in _data_build
module = builder.visit_module(node, modname, node_file, package)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 173, in visit_module
[self.visit(child, newnode) for child in node.body],
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 173, in <listcomp>
[self.visit(child, newnode) for child in node.body],
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 488, in visit
return visit_method(node, parent)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 1027, in visit_expr
newnode.postinit(self.visit(node.value, newnode))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 488, in visit
return visit_method(node, parent)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 1236, in visit_attribute
newnode.postinit(self.visit(node.value, newnode))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 488, in visit
return visit_method(node, parent)
^^^^^^^^^^^^^^^^^^^^^^^^^^
[...snip...]
File "astroid/astroid/rebuilder.py", line 1236, in visit_attribute
newnode.postinit(self.visit(node.value, newnode))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 488, in visit
return visit_method(node, parent)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "astroid/astroid/rebuilder.py", line 1228, in visit_attribute
newnode = nodes.Attribute(
^^^^^^^^^^^^^^^^
File "astroid/astroid/nodes/node_classes.py", line 2913, in __init__
super().__init__(
RecursionError: maximum recursion depth exceeded
Thank you ! It feels unlikely to be a problem during normal usage. And I don't have any idea how to fix it correctly. Preventing the crash would make astroid harder to débug and understand (bad chaotic inference result instead of a clean crash). If anyone is feeling clever..
Steps to reproduce
The following code triggers a
RecursionError
in astroid:This bug was discovered by OSS-Fuzz:
https://issues.oss-fuzz.com/issues/402175220 (report not public yet)
Current behavior
Expected behavior
No crash
Version
9f8faeb
The text was updated successfully, but these errors were encountered: