diff --git a/redo-sh.do b/redo-sh.do index fb4451b..91372b3 100644 --- a/redo-sh.do +++ b/redo-sh.do @@ -7,7 +7,7 @@ mkdir $1.new GOOD= WARN= -for sh in dash sh ash ksh pdksh bash zsh busybox; do +for sh in dash sh ash ksh ksh88 ksh93 pdksh bash zsh busybox; do printf "Testing %s... " "$sh" FOUND=`which $sh 2>/dev/null` || { echo "missing"; continue; } @@ -24,7 +24,7 @@ for sh in dash sh ash ksh pdksh bash zsh busybox; do set -e case $RV in - 0) echo "good"; GOOD=$FOUND; break ;; + 0) echo "good"; [ -n "$GOOD" ] || GOOD=$FOUND ;; 42) echo "warnings"; [ -n "$WARN" ] || WARN=$FOUND ;; *) echo "failed" ;; esac diff --git a/t/shelltest.od b/t/shelltest.od index e4cfc1a..c3c9f7f 100644 --- a/t/shelltest.od +++ b/t/shelltest.od @@ -168,8 +168,8 @@ echo "`printf 'foo\r\n'`"" bar" | diff -q - broken || fail 59 # -# This one is too obnoxious. dash and ash pass the test, but nothing else does, -# and this case is just too dumb to care about. Just don't do that! +# This one is too obnoxious. dash and ash pass the test, but nothing else +# does, and this case is just too dumb to care about. Just don't do that! # #t=`echo $(case x in x) echo hello;; esac)` #[ "$t" = "hello" ] || fail 60 @@ -194,6 +194,7 @@ t2=$(for d in this-glob-does-*-not-exist; do echo "$d"; done) false || foo=bar; [ "$?" = 0 ] || fail 71 foo=`exit 1`; [ "$?" != 0 ] || fail 72 + # http://www.gnu.org/software/hello/manual/autoconf/Shell-Functions.html f1() { echo 1; } f2(){ echo 2;}