26 lines
474 B
Plaintext
26 lines
474 B
Plaintext
|
# $FreeBSD$
|
||
|
# POSIX does not require these bytes to work in function names,
|
||
|
# but making them all work seems a good goal.
|
||
|
|
||
|
failures=0
|
||
|
unset LC_ALL
|
||
|
export LC_CTYPE=en_US.ISO8859-1
|
||
|
i=128
|
||
|
set -f
|
||
|
while [ "$i" -le 255 ]; do
|
||
|
c=$(printf \\"$(printf %o "$i")")
|
||
|
ok=0
|
||
|
eval "$c() { ok=1; }"
|
||
|
$c
|
||
|
ok1=$ok
|
||
|
ok=0
|
||
|
"$c"
|
||
|
if [ "$ok" != 1 ] || [ "$ok1" != 1 ]; then
|
||
|
echo "Bad results for character $i" >&2
|
||
|
: $((failures += 1))
|
||
|
fi
|
||
|
unset -f $c
|
||
|
i=$((i+1))
|
||
|
done
|
||
|
exit $((failures > 0))
|