in reply to Re: "The stat preceding -l _ wasn't an lstat"?in thread "The stat preceding -l _ wasn't an lstat"?
Just reverse it, and it's ok. ! -l $file && -f _. The -f flag can work on lstat's output, whether the lstat found a link or not.