mirror of
https://github.com/python/cpython.git
synced 2025-07-29 06:05:00 +00:00
Don't allow keyword arguments to reversed().
This commit is contained in:
parent
88107dafef
commit
ecf9091f59
2 changed files with 6 additions and 1 deletions
|
@ -138,6 +138,8 @@ class TestReversed(unittest.TestCase):
|
||||||
for data in 'abc', range(5), tuple(enumerate('abc')), A(), xrange(1,17,5):
|
for data in 'abc', range(5), tuple(enumerate('abc')), A(), xrange(1,17,5):
|
||||||
self.assertEqual(list(data)[::-1], list(reversed(data)))
|
self.assertEqual(list(data)[::-1], list(reversed(data)))
|
||||||
self.assertRaises(TypeError, reversed, {})
|
self.assertRaises(TypeError, reversed, {})
|
||||||
|
# don't allow keyword arguments
|
||||||
|
self.assertRaises(TypeError, reversed, [], a=1)
|
||||||
|
|
||||||
def test_xrange_optimization(self):
|
def test_xrange_optimization(self):
|
||||||
x = xrange(1)
|
x = xrange(1)
|
||||||
|
|
|
@ -224,7 +224,10 @@ reversed_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
|
||||||
PyObject *seq;
|
PyObject *seq;
|
||||||
reversedobject *ro;
|
reversedobject *ro;
|
||||||
|
|
||||||
if (!PyArg_UnpackTuple(args, "reversed", 1, 1, &seq))
|
if (type == &PyReversed_Type && !_PyArg_NoKeywords("reversed()", kwds))
|
||||||
|
return NULL;
|
||||||
|
|
||||||
|
if (!PyArg_UnpackTuple(args, "reversed", 1, 1, &seq) )
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
if (PyObject_HasAttrString(seq, "__reversed__"))
|
if (PyObject_HasAttrString(seq, "__reversed__"))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue