the same fix present in NetBSD.
Note: the getopt man page contains more antique information like this.
An overhaul of the man page and/or sync with NetBSD would be the right
thing to do. But since this is out of the scope of the PR, I'll leave
it as it is for now.
PR: docs/133118
Submitted by: Oleg A. Mamontov (oleg at mamontov dot net)
Discussed with: jilles@
MFC after: 2 weeks
Arguments with whitespaces are easy to fix, but in combination with
shell metachars that should not be evaluated it is very hard, probably
impossible to fix without going to a line-oriented solution.
Next time I will believe Henry Spencer when he says "this looks easy
to fix but isn't".
parameter that has space in it, both in getopt.c and in the manpage
example.
2) Fix the example in the manpage. The set(1) command is required to
return 0 (POSIX 1003.2, section 3.14.11), so you can't test for
getopt's exit status like the example did:
#! /bin/sh
set -- `getopt abo: $*`
if test $? != 0 # wrong, tests for set's exit status, which is
# always zero, no for getopt(1)'s.
Fixes PR bin/5845, which thought it was getopt's fault, but in fact
the manpage was wrong.
I also updated the example to be more useful and updated the BUGS
section.
PR: bin/5845