Use ISNAN trick only within interpreter, since macro doesn't work if arg has side effects (happens in ff package)