Commit ecf9091f authored by Georg Brandl's avatar Georg Brandl

Don't allow keyword arguments to reversed().

parent 88107daf
......@@ -138,6 +138,8 @@ class TestReversed(unittest.TestCase):
for data in 'abc', range(5), tuple(enumerate('abc')), A(), xrange(1,17,5):
self.assertEqual(list(data)[::-1], list(reversed(data)))
self.assertRaises(TypeError, reversed, {})
# don't allow keyword arguments
self.assertRaises(TypeError, reversed, [], a=1)
def test_xrange_optimization(self):
x = xrange(1)
......
......@@ -224,7 +224,10 @@ reversed_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
PyObject *seq;
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;
if (PyObject_HasAttrString(seq, "__reversed__"))
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment