#17032: The "global" in the "NameError: global name 'x' is not defined" error message has been removed. Patch by Ram Rachum.
This commit is contained in:
parent
ee71f4a8a4
commit
04a29554c1
|
@ -182,10 +182,10 @@ class KeywordOnlyArgTestCase(unittest.TestCase):
|
|||
with self.assertRaises(NameError) as err:
|
||||
def f(v=a, x=b, *, y=c, z=d):
|
||||
pass
|
||||
self.assertEqual(str(err.exception), "global name 'b' is not defined")
|
||||
self.assertEqual(str(err.exception), "name 'b' is not defined")
|
||||
with self.assertRaises(NameError) as err:
|
||||
f = lambda v=a, x=b, *, y=c, z=d: None
|
||||
self.assertEqual(str(err.exception), "global name 'b' is not defined")
|
||||
self.assertEqual(str(err.exception), "name 'b' is not defined")
|
||||
|
||||
|
||||
def test_main():
|
||||
|
|
|
@ -969,6 +969,7 @@ Fernando Pérez
|
|||
Pierre Quentel
|
||||
Brian Quinlan
|
||||
Anders Qvist
|
||||
Ram Rachum
|
||||
Jérôme Radix
|
||||
Burton Radons
|
||||
Jeff Ramnani
|
||||
|
|
|
@ -10,6 +10,9 @@ What's New in Python 3.4.0 Alpha 1?
|
|||
Core and Builtins
|
||||
-----------------
|
||||
|
||||
- Issue #17032: The "global" in the "NameError: global name 'x' is not defined"
|
||||
error message has been removed. Patch by Ram Rachum.
|
||||
|
||||
- Issue #17223: array module: Fix a crasher when converting an array containing
|
||||
invalid characters (outside range [U+0000; U+10ffff]) to Unicode:
|
||||
repr(array), str(array) and array.tounicode(). Patch written by Manuel Jacob.
|
||||
|
|
|
@ -142,8 +142,6 @@ static PyObject * special_lookup(PyObject *, _Py_Identifier *);
|
|||
|
||||
#define NAME_ERROR_MSG \
|
||||
"name '%.200s' is not defined"
|
||||
#define GLOBAL_NAME_ERROR_MSG \
|
||||
"global name '%.200s' is not defined"
|
||||
#define UNBOUNDLOCAL_ERROR_MSG \
|
||||
"local variable '%.200s' referenced before assignment"
|
||||
#define UNBOUNDFREE_ERROR_MSG \
|
||||
|
@ -2140,7 +2138,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
|
|||
err = PyDict_DelItem(f->f_globals, name);
|
||||
if (err != 0) {
|
||||
format_exc_check_arg(
|
||||
PyExc_NameError, GLOBAL_NAME_ERROR_MSG, name);
|
||||
PyExc_NameError, NAME_ERROR_MSG, name);
|
||||
goto error;
|
||||
}
|
||||
DISPATCH();
|
||||
|
@ -2208,7 +2206,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
|
|||
if (v == NULL) {
|
||||
if (!PyErr_Occurred())
|
||||
format_exc_check_arg(PyExc_NameError,
|
||||
GLOBAL_NAME_ERROR_MSG, name);
|
||||
NAME_ERROR_MSG, name);
|
||||
goto error;
|
||||
}
|
||||
Py_INCREF(v);
|
||||
|
@ -2222,7 +2220,7 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
|
|||
if (PyErr_ExceptionMatches(PyExc_KeyError))
|
||||
format_exc_check_arg(
|
||||
PyExc_NameError,
|
||||
GLOBAL_NAME_ERROR_MSG, name);
|
||||
NAME_ERROR_MSG, name);
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue