New submission from Ceridwen: I have a linked list implementation made of nested tuples with a custom repr:
def __repr__(self): return 'LinkedList(' + ', '.join(repr(v) for v in self) + ')' (Iterating over a LinkedList returns just its contents.) When using Raymond Hettinger's recipe for finding the size in memory of an object, https://code.activestate.com/recipes/577504-compute-memory-footprint-of-an-object-and-its-cont/?in=user-178123 , when I set verbose=True and exceed the recursion limit with reprlib.repr, I get the following error: Fatal Python error: Cannot recover from stack overflow. Current thread 0x00007fa24200d700 (most recent call first): File "<name of LinkedList file>.py", line 327 in __repr__ File "/usr/lib/python3.4/reprlib.py", line 135 in repr_instance File "/usr/lib/python3.4/reprlib.py", line 64 in repr1 File "/usr/lib/python3.4/reprlib.py", line 54 in repr File "recipe.py", line 46 in sizeof [many instances of the above line repeated] ... Aborted (core dumped) The line in the recipe it fails when recursing on is: print(s, type(o), repr(o), file=stderr) On 2.7 it fails with a RuntimeError as I'd expect. ---------- components: Library (Lib) messages: 251655 nosy: ceridwen priority: normal severity: normal status: open title: Stack overflow in reprlib causes a core dump type: crash versions: Python 3.4 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue25240> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com