On Wed, Aug 23, 2017 at 3:57 PM, Eric Blake <ebl...@redhat.com> wrote:

>
> Not just deprecated, but inherently ambiguous.  There are situations
> where you CANNOT tell whether the user meant -a to mean the binary
> operator or a string being tested against, because POSIX (intentionally)
> does not specify enough precedence rules in how to parse > 4 arguments.
>
> --
> Eric Blake, Principal Software Engineer
> Red Hat, Inc.           +1-919-301-3266
> Virtualization:  qemu.org | libvirt.org
>
>
What would you expect [ ! -a foo ] to do?

It's always true, because it treats -a as the logical AND there. And that's
with 3 arguments, which is defined but unexpected behavior

Reply via email to