summary refs log tree commit diff
path: root/bin/cash/tests/parser/for1.0
diff options
context:
space:
mode:
Diffstat (limited to 'bin/cash/tests/parser/for1.0')
-rw-r--r--bin/cash/tests/parser/for1.029
1 files changed, 29 insertions, 0 deletions
diff --git a/bin/cash/tests/parser/for1.0 b/bin/cash/tests/parser/for1.0
new file mode 100644
index 00000000..c2fc8975
--- /dev/null
+++ b/bin/cash/tests/parser/for1.0
@@ -0,0 +1,29 @@
+# $FreeBSD: releng/12.0/bin/sh/tests/parser/for1.0 218889 2011-02-20 14:18:58Z jilles $
+
+nl='
+'
+list=' a b c'
+for s1 in "$nl" " "; do
+	for s2 in "$nl" ";" ";$nl"; do
+		for s3 in "$nl" " "; do
+			r=''
+			eval "for i${s1}in ${list}${s2}do${s3}r=\"\$r \$i\"; done"
+			[ "$r" = "$list" ] || exit 1
+		done
+	done
+done
+set -- $list
+for s2 in "$nl" " "; do
+	for s3 in "$nl" " "; do
+		r=''
+		eval "for i${s2}do${s3}r=\"\$r \$i\"; done"
+		[ "$r" = "$list" ] || exit 1
+	done
+done
+for s1 in "$nl" " "; do
+	for s2 in "$nl" ";" ";$nl"; do
+		for s3 in "$nl" " "; do
+			eval "for i${s1}in${s2}do${s3}exit 1; done"
+		done
+	done
+done