+echo 'ls' | TERM=dumb whatnow -noedit -prompt '' 2> "$actualerr" | \
+ sort > "$actual"
+
+check "$expectederr" "$actualerr" 'keep first'
+check "$expected" "$actual" 'keep first'
+
+# Check with SHELL unset. This won't reveal any problems if
+# /bin/sh sets SHELL, which bash does.
+unset SHELL
+
+echo 'ls' | TERM=dumb whatnow -noedit -prompt '' 2> "$actualerr" | \
+ sort > "$actual"
+
+check "$expectederr" "$actualerr"
+check "$expected" "$actual"
+
+# On some platforms, need to be out of $SPDIR in order to remove it.
+cd "$MH_TEST_DIR"
+test ${failed:-0} -eq 0 && rm -r "$SPDIR"