summary refs log tree commit diff
path: root/bin/cash/tests/parser/func1.0
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2019-01-10 18:48:02 -0500
committerJune McEnroe <june@causal.agency>2019-01-10 18:48:02 -0500
commit935c68573f8e63468723dc2691957637e4e6bcb7 (patch)
tree420e76ad90ffc30fa498ee2cc37009c3b4db794f /bin/cash/tests/parser/func1.0
parentRemove character NETHACKOPTIONS (diff)
downloadsrc-935c68573f8e63468723dc2691957637e4e6bcb7.tar.gz
src-935c68573f8e63468723dc2691957637e4e6bcb7.zip
Import /usr/src/bin/sh from FreeBSD 12.0-RELEASE
Diffstat (limited to '')
-rw-r--r--bin/cash/tests/parser/func1.025
1 files changed, 25 insertions, 0 deletions
diff --git a/bin/cash/tests/parser/func1.0 b/bin/cash/tests/parser/func1.0
new file mode 100644
index 00000000..dac9cd9c
--- /dev/null
+++ b/bin/cash/tests/parser/func1.0
@@ -0,0 +1,25 @@
+# $FreeBSD: releng/12.0/bin/sh/tests/parser/func1.0 214291 2010-10-24 20:45:13Z jilles $
+# 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))