Issue 3415: Interpreter error when running a script under debugger control (original) (raw)
For reference, here is the output of the pdb session:
gbr@lap ~/devel/python> ./python Lib/pdb.py Lib/idlelib/idle.py
/home/gbr/devel/python/Lib/idlelib/idle.py(1)() -> try: (Pdb) break multicall.py:300 *** 'multicall.py' not found from sys.path (Pdb) break idle.py:10 Breakpoint 1 at /home/gbr/devel/python/Lib/idlelib/idle.py:10 (Pdb) c Traceback (most recent call last): File "/home/gbr/devel/python/Lib/pdb.py", line 1275, in main pdb._runscript(mainpyfile) File "/home/gbr/devel/python/Lib/pdb.py", line 1192, in _runscript self.run(statement) File "/home/gbr/devel/python/Lib/bdb.py", line 366, in run exec cmd in globals, locals File "", line 1, in File "Lib/idlelib/idle.py", line 21, in idlelib.PyShell.main() File "/home/gbr/devel/python/Lib/idlelib/PyShell.py", line 1396, in main shell = flist.open_shell() File "/home/gbr/devel/python/Lib/idlelib/PyShell.py", line 275, in open_shell self.pyshell = PyShell(self) File "/home/gbr/devel/python/Lib/idlelib/PyShell.py", line 816, in init OutputWindow.init(self, flist, None, None) File "/home/gbr/devel/python/Lib/idlelib/OutputWindow.py", line 16, in init EditorWindow.init(self, *args) File "/home/gbr/devel/python/Lib/idlelib/EditorWindow.py", line 108, in init self.text = text = MultiCallCreator(Text)( File "/home/gbr/devel/python/Lib/idlelib/MultiCall.py", line 294, in MultiCallCreator class MultiCall (widget): File "/home/gbr/devel/python/Lib/idlelib/MultiCall.py", line 295, in MultiCall assert issubclass(widget, Tkinter.Misc) NameError: free variable 'widget' referenced before assignment in enclosing scope Uncaught exception. Entering post mortem debugging Running 'cont' or 'step' will restart the program /home/gbr/devel/python/Lib/idlelib/MultiCall.py(295)MultiCall() -> assert issubclass(widget, Tkinter.Misc) (Pdb)
I think we had some similar issue with trace functions and class scopes in the past, but can't remember where.