Well, you guys are the experts. I was trying to be "smart" - thinking that lbracket 'required' the closing right bracket to keep the shell syntax checkers happy. Maybe I am expecting too much from my shells need to check syntax.

FYI - It seems to be working as expected, rather designed - so I shall make some specialized 'buildaix' components to get around the filenameing problem.

Will keep you posted.


On Tue, Jun 17, 2014 at 11:16 PM, Eric Blake <eblake@redhat.com> wrote:
On 06/17/2014 02:50 PM, Michael Felt wrote:
> FYI: the program runs fine, and even from the command line (the extra ] at
> the end must satisify the ksh syntax checking).

Rather, the 'test' binary and the 'lbracket' binary differ in one
crucial aspect: 'lbracket' requires its last argument in argv[] to be
"]".  It is not ksh, but lbracket itself that requires the matching ],
and it is this fact that allows us to obey POSIX while still allowing '[
--help' to produce help text, even though 'test --help' cannot do so
(that is, '[' has an escape hatch that 'test' does not).

--
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org