svn commit: r206168 - head/tools/regression/bin/sh/expansion

Jilles Tjoelker jilles at FreeBSD.org
Sun Apr 4 16:48:33 UTC 2010


Author: jilles
Date: Sun Apr  4 16:48:33 2010
New Revision: 206168
URL: http://svn.freebsd.org/changeset/base/206168

Log:
  sh: Add test for nested arithmetic substitution.
  
  Pre-r206145 sh changes nested arithmetic substitution to parentheses, which
  is not always correct, as exercised by this test.

Added:
  head/tools/regression/bin/sh/expansion/arith5.0   (contents, props changed)

Added: head/tools/regression/bin/sh/expansion/arith5.0
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/tools/regression/bin/sh/expansion/arith5.0	Sun Apr  4 16:48:33 2010	(r206168)
@@ -0,0 +1,17 @@
+# $FreeBSD$
+
+failures=0
+
+check() {
+	if [ "$2" != "$3" ]; then
+		failures=$((failures+1))
+		echo "For $1, expected $3 actual $2"
+	fi
+}
+
+unset a
+check '$((1+${a:-$((7+2))}))' "$((1+${a:-$((7+2))}))" 10
+check '$((1+${a:=$((2+2))}))' "$((1+${a:=$((2+2))}))" 5
+check '$a' "$a" 4
+
+exit $((failures != 0))


More information about the svn-src-all mailing list