Terry J. Reedy <tjre...@udel.edu> added the comment:

I reran Dino's test.py on current master on Win10 and got 

Traceback (most recent call last):
  File "f:/dev/tem/recursion_crash.py", line 23, in <module>
    f()
  File "f:/dev/tem/recursion_crash.py", line 18, in f
    f()
  File "f:/dev/tem/recursion_crash.py", line 18, in f
    f()
  File "f:/dev/tem/recursion_crash.py", line 18, in f
    f()
  [Previous line repeated 991 more times]
  File "f:/dev/tem/recursion_crash.py", line 17, in f
    print(sys.getrecursionlimit())
RecursionError: maximum recursion depth exceeded while calling a Python object

The request for a fix to get a nice traceback is out of date.

When I run Gregor's tkinter_recursionbug_31.py, I immediately get this:

f:\dev\3x>python f:/dev/tem/tk_recbug.py
Running Debug|Win32 interpreter...
f:/dev/tem/tk_recbug.py:14: DeprecationWarning: invalid escape sequence \P
  """

The closet I came to reproducing this is
>>> eval(r"f'\P{1}'")

Warning (from warnings module):
  File "<string>", line 1
DeprecationWarning: invalid escape sequence \P
'\\P1'

When I continue and move the red box, I eventually get

Fatal Python error: Cannot recover from stack overflow.

Current thread 0x000012c8 (most recent call first):
  File "F:\dev\3x\lib\enum.py", line 535 in __new__
  File "F:\dev\3x\lib\enum.py", line 307 in __call__
  File "F:\dev\3x\lib\tkinter\__init__.py", line 1431 in _substitute
  File "F:\dev\3x\lib\tkinter\__init__.py", line 1701 in __call__
  File "F:\dev\3x\lib\tkinter\__init__.py", line 1174 in update
  File "f:/dev/tem/tk_recbug.py", line 39 in move
  File "F:\dev\3x\lib\tkinter\__init__.py", line 1702 in __call__
  File "F:\dev\3x\lib\tkinter\__init__.py", line 1174 in update
  <repeat last 3 lines multiple times>
  ...

f:\dev\3x>

and the tk window disappears.  With pythonw, the tk window disappears with no 
feedback.

There is no Windows message box, so the request to not get one is fixed 
already.  There is a (truncated) traceback (without the code lines, but they 
are viewable in the source), so the requested to get one is also fulfilled.  
The only thing left is 'Fatal Python error'.  From Antoine's messages, the 
request to get a normal exception instead is "Won't fix unless someone has a 
bright new idea".

----------
nosy: +serhiy.storchaka

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue6717>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to