summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorjilles <jilles@FreeBSD.org>2010-08-22 13:09:12 +0000
committerjilles <jilles@FreeBSD.org>2010-08-22 13:09:12 +0000
commitbf52da60ea59f04f32f405bab687c60a59101d19 (patch)
tree33a7c61d27bb214462f0b4bf961f15c87152d5ac /tools
parentb23d3a5ce5dae3490e3a830279dbb6a158b70af9 (diff)
downloadFreeBSD-src-bf52da60ea59f04f32f405bab687c60a59101d19.zip
FreeBSD-src-bf52da60ea59f04f32f405bab687c60a59101d19.tar.gz
sh: Test that all bytes from 128 to 255 can be used in IFS.
To avoid multibyte issues, this test forces ISO8859-1 charset. This also passes on stable/8.
Diffstat (limited to 'tools')
-rw-r--r--tools/regression/bin/sh/expansion/ifs3.021
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/regression/bin/sh/expansion/ifs3.0 b/tools/regression/bin/sh/expansion/ifs3.0
new file mode 100644
index 0000000..0569b57
--- /dev/null
+++ b/tools/regression/bin/sh/expansion/ifs3.0
@@ -0,0 +1,21 @@
+# $FreeBSD$
+
+failures=0
+unset LC_ALL
+export LC_CTYPE=en_US.ISO8859-1
+i=128
+set -f
+while [ "$i" -le 255 ]; do
+ i2=$((i^2))
+ c=$(printf \\"$(printf %o "$i")")
+ c2=$(printf \\"$(printf %o "$i2")")
+ IFS=$c
+ set -- $c2$c$c2$c$c2
+ if [ "$#" -ne 3 ] || [ "$1" != "$c2" ] || [ "$2" != "$c2" ] ||
+ [ "$3" != "$c2" ]; then
+ echo "Bad results for separator $i (word $i2)" >&2
+ : $((failures += 1))
+ fi
+ i=$((i+1))
+done
+exit $((failures > 0))
OpenPOWER on IntegriCloud