From 4fadeef03f3dbfab7bc98a68c3558daa6f24117e Mon Sep 17 00:00:00 2001 From: Jilles Tjoelker Date: Fri, 19 Nov 2010 22:25:32 +0000 Subject: [PATCH] sh: Add a test that manipulates various long strings. It is quite effective at detecting mistakes in memalloc.c and code using it. It is somewhat slow, but some of the patches in my queue improve it. --- tools/regression/bin/sh/expansion/arith6.0 | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 tools/regression/bin/sh/expansion/arith6.0 diff --git a/tools/regression/bin/sh/expansion/arith6.0 b/tools/regression/bin/sh/expansion/arith6.0 new file mode 100644 index 00000000000..fc4589c1bac --- /dev/null +++ b/tools/regression/bin/sh/expansion/arith6.0 @@ -0,0 +1,16 @@ +# $FreeBSD$ + +v1=1\ +\ 1 +v2=D +v3=C123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 +f() { v4="$*"; } + +while [ ${#v2} -lt 1250 ]; do + eval $v2=$((3+${#v2})) $v3=$((4-${#v2})) + eval f $(($v2+ $v1 +$v3)) + if [ $v4 -ne 9 ]; then + echo bad: $v4 -ne 9 at ${#v2} + fi + v2=x$v2 + v3=y$v3 +done