Shouldn't `na` and `nb` be just ints here? I suppose the equality check is probably just a guard against fractional strides, but I am wondering about `na` overflow (when cast to int). (don't know C-casting rules though, maybe it already does that...)