You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the various functions in quicksort.c.src do not check PyErr_Occurred() before returning, when the tp_compare fails no exception is raised. The exception is thrown later by any random C-API call, but the error originated in the sort function
python -c "import numpy as np; from datetime import datetime as dt; \
a = np.array([1, 2, dt.now(), 0, 3], dtype=object); \
np.sort(a); print a"
numpy/core/fromnumeric.py:822: RuntimeWarning: tp_compare didn't return -1 or -2 for exception
a.sort(axis=axis, kind=kind, order=order)
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "numpy/core/numeric.py", line 1942, in array_str
return array2string(a, max_line_width, precision, suppress_small, ' ', "")
File "numpy/core/arrayprint.py", line 397, in wrapper
return f(self, *args, **kwargs)
File "numpy/core/arrayprint.py", line 529, in array2string
separator, prefix, formatter=formatter)
File "numpy/core/arrayprint.py", line 373, in _array2string
_summaryEdgeItems, summary_insert)[:-1]
File "numpy/core/arrayprint.py", line 565, in _formatArray
for i in range(leading_items):
TypeError: can't compare datetime.datetime to int
FWIW, on PyPy we detect that a C-API function raised an exception but returns a valid value, which
is how I found the problem
The text was updated successfully, but these errors were encountered:
the various functions in quicksort.c.src do not check
PyErr_Occurred()
before returning, when the tp_compare fails no exception is raised. The exception is thrown later by any random C-API call, but the error originated in the sort functionFWIW, on PyPy we detect that a C-API function raised an exception but returns a valid value, which
is how I found the problem
The text was updated successfully, but these errors were encountered: