summary refs log tree commit diff
path: root/bin/cash/tests/parameters/positional9.0
diff options
context:
space:
mode:
Diffstat (limited to 'bin/cash/tests/parameters/positional9.0')
-rw-r--r--bin/cash/tests/parameters/positional9.018
1 files changed, 18 insertions, 0 deletions
diff --git a/bin/cash/tests/parameters/positional9.0 b/bin/cash/tests/parameters/positional9.0
new file mode 100644
index 00000000..7bf09241
--- /dev/null
+++ b/bin/cash/tests/parameters/positional9.0
@@ -0,0 +1,18 @@
+# $FreeBSD: releng/12.0/bin/sh/tests/parameters/positional9.0 291903 2015-12-06 14:09:31Z jilles $
+# Although POSIX leaves the result of expanding ${#@} and ${#*} unspecified,
+# make sure it is at least numeric.
+
+set -- bb cc ddd
+set -f
+lengths=${#*}${#@}"${#*}${#@}"$(echo ${#*}${#@}"${#*}${#@}")
+IFS=
+lengths=$lengths${#*}${#@}"${#*}${#@}"$(echo ${#*}${#@}"${#*}${#@}")
+case $lengths in
+*[!0-9]*)
+	printf 'bad: %s\n' "$lengths"
+	exit 3 ;;
+????????????????*) ;;
+*)
+	printf 'too short: %s\n' "$lengths"
+	exit 3 ;;
+esac