Message292358
> zip.__length_hint__() must return NotImplemented or raise TypeError if any of iterators don't implement __length_hint__ or its __length_hint__() returns NotImplemented or raises TypeError.
> And what should return zip(range(3), range(2**1000)).__length_hint__()? I expect 3, not OverflowError.
That's actually non-trivial because PyObject_LengthHint just returns a Py_ssize_t. To recover NotImplemented will be complicated and there's no way to discriminate if the OverflowError happened in PyObject_LengthHint or in the called __length_hint__.
But TypeError is correctly re-raised in the tests I made. |
|
Date |
User |
Action |
Args |
2017-04-26 14:54:44 | MSeifert | set | recipients:
+ MSeifert, rhettinger, terry.reedy, vstinner, alex, serhiy.storchaka |
2017-04-26 14:54:44 | MSeifert | set | messageid: <1493218484.59.0.317975840701.issue26828@psf.upfronthosting.co.za> |
2017-04-26 14:54:44 | MSeifert | link | issue26828 messages |
2017-04-26 14:54:44 | MSeifert | create | |
|