Seems I lost my comment. If we break out earlier, the check is unnecessary (it cannot be npy_object). However the block is there to force object dtype. I wonder if it would not be correct to force the dtype for void arrays. That way the code:
```
a = np.array([(0,1)], dtype='i,i')
a == (0, 1)
```
should work. Would that be another fix, or is there anything that might go bad? Would need to test if array priority works correctly for that case then.