Martin v. Löwis wrote: > Travis Oliphant wrote: >> I say it's a bug that should be fixed. Don't clear the error, raise it. > > Several people have said this, but I don't think it can work. > > If you raise an OverflowError in __index__, the slicing code cannot know > whether this meant as overflow or underflow (in a signed sense). It can actually, but you have to allow 3 possible error return values from nb_index (-1, PY_SSIZE_T_MIN and PY_SSIZE_T_MAX). This is ugly as hell [1], so I'm going to try to work out a patch that changes the signature of nb_index to return PyObject * (leaving the client code in the core to decide whether to clip, overflow, or leave the result alone). Cheers, Nick. [1] http://www.python.org/sf/1530738 -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia --------------------------------------------------------------- http://www.boredomandlaziness.org
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4