[issue5526] Local variables unavailable for operation of list comprehension when using eval()

2009-03-20 Thread Benjamin Peterson

Benjamin Peterson benja...@python.org added the comment:

This is a fundamental limitation of how comprehensions are implemented
in Python 3 and is unlikely to change anytime soon.

--
nosy: +benjamin.peterson
resolution:  - wont fix
status: open - closed

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue5526
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue5526] Local variables unavailable for operation of list comprehension when using eval()

2009-03-19 Thread Evan Greensmith

New submission from Evan Greensmith evan.greensm...@gmail.com:

In python 3.0 and 3.1, attempting to access a local variable from within
a list comprehension in a string passed to eval() causes a NameError. 
Doesn't seem to be a problem in python 2.6

I have attempted to run the attached test cases (test_eval_comp.py)
using the following builds of python:

Python 2.6.1 (r261:67517, Dec  4 2008, 16:51:00) [MSC v.1500 32 bit
(Intel)] on win32

Python 3.0.1 (r301:69561, Feb 13 2009, 20:04:18) [MSC v.1500 32 bit
(Intel)] on win32

Python 3.1a1 (r31a1:70244, Mar  8 2009, 18:15:03) [MSC v.1500 32 bit
(Intel)] on win32

All tests passed with Python 2.6.1.  The following five tests failed
with Python 3.0.1 and 3.1a1

EvalWithComprehensionTestCase.test_local_var
NameError: global name 'value' is not defined
EvalWithComprehensionTestCase.test_function_arg
NameError: global name 'value' is not defined
EvalWithComprehensionTestCase.test_self_attrib
NameError: global name 'self' is not defined
ExampleFromDocsTestCase.test_local_var
NameError: global name 'vec1' is not defined
NestedComprehensionExampleFromDocsTestCase.test_local_var
NameError: global name 'mat' is not defined

--
files: test_eval_comp.py
messages: 83852
nosy: evan.greensmith
severity: normal
status: open
title: Local variables unavailable for operation of list comprehension when 
using eval()
versions: Python 3.0, Python 3.1
Added file: http://bugs.python.org/file13382/test_eval_comp.py

___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue5526
___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com