xref: /dflybsd-src/tools/regression/bin/sh/parser/func1.0 (revision 3e3895bf4584c1562faf4533cbd97026ee6a8dcf)
1*3e3895bfSKrzysztof Piecuch# $FreeBSD: head/bin/sh/tests/parser/func1.0 214291 2010-10-24 20:45:13Z jilles $
23df4d8b0SPeter Avalos# POSIX does not require these bytes to work in function names,
33df4d8b0SPeter Avalos# but making them all work seems a good goal.
43df4d8b0SPeter Avalos
53df4d8b0SPeter Avalosfailures=0
63df4d8b0SPeter Avalosunset LC_ALL
73df4d8b0SPeter Avalosexport LC_CTYPE=en_US.ISO8859-1
83df4d8b0SPeter Avalosi=128
93df4d8b0SPeter Avalosset -f
103df4d8b0SPeter Avaloswhile [ "$i" -le 255 ]; do
113df4d8b0SPeter Avalos	c=$(printf \\"$(printf %o "$i")")
123df4d8b0SPeter Avalos	ok=0
133df4d8b0SPeter Avalos	eval "$c() { ok=1; }"
143df4d8b0SPeter Avalos	$c
153df4d8b0SPeter Avalos	ok1=$ok
163df4d8b0SPeter Avalos	ok=0
173df4d8b0SPeter Avalos	"$c"
183df4d8b0SPeter Avalos	if [ "$ok" != 1 ] || [ "$ok1" != 1 ]; then
193df4d8b0SPeter Avalos		echo "Bad results for character $i" >&2
203df4d8b0SPeter Avalos		: $((failures += 1))
213df4d8b0SPeter Avalos	fi
223df4d8b0SPeter Avalos	unset -f $c
233df4d8b0SPeter Avalos	i=$((i+1))
243df4d8b0SPeter Avalosdone
253df4d8b0SPeter Avalosexit $((failures > 0))
26