[issue2221] Py30a3: eval in threaded code raises SystemError

Kurt B. Kaiser report at bugs.python.org
Fri Apr 4 20:07:10 CEST 2008


Kurt B. Kaiser <kbk at shore.net> added the comment:

I don't think that this is an IDLE error.  It 
can be more generally exhibited as follows:

Without the subprocess we get the expected:

IDLE 3.0a4      ==== No Subprocess ====
>>> eval('a')
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    eval('a')
  File "<string>", line 1, in <module>
NameError: name 'a' is not defined

With the subprocess there is an interpreter 
error when IDLE applies eval to 'a':

IDLE 3.0a4      
>>> eval('a')
Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    eval('a')
SystemError: error return without exception set

I did a cutdown where I ran the eval in a 
subprocess and didn't reproduce the error.  I 
suspect it's thread related (the subprocess 
uses its main thread to execute user code, and 
another thread to manage the socket connection 
to the GUI process).

issue1733757 is suggestive.

This is a 3.0 issue, it doesn't occur in the 
trunk.

----------
assignee: kbk -> 
components: +Interpreter Core -IDLE
nosy: +amaury.forgeotdarc
priority: normal -> high
title: Py30a3: calltip produces error output to stderr -> Py30a3: eval in threaded code raises SystemError

__________________________________
Tracker <report at bugs.python.org>
<http://bugs.python.org/issue2221>
__________________________________


More information about the Python-bugs-list mailing list