cmp_arg_types(int *arg1, int *arg2, int n)
{
while (n--) {
if (PyArray_EquivTypenums(*arg1, *arg2)) continue;
if (PyArray_CanCastSafely(*arg1, *arg2))
return -1;
return 1;
}
return 0;
}
IIUC, if can cast (arg1, arg2), we never compare other args, just return -1.
Shouldn't this be:
cmp_arg_types(int *arg1, int *arg2, int n)
{
while (n--) {
if (PyArray_EquivTypenums(*arg1, *arg2) or
(PyArray_CanCastSafely(*arg1, *arg2))
continue;
return 1;
}
return 0;
}
_______________________________________________
Numpy-discussion mailing list
[email protected]
http://projects.scipy.org/mailman/listinfo/numpy-discussion