Working (but ugly) type check for overloaded arrows.