Hi, I am attaching patch against tests/run-all with the hope that the changes can be accepted upstream. The patch should be self explanatory. For completeness here are the errors I saw before I erased SHELLOPTS variable
run-redir warning: the text of a system error message may vary between systems and warning: produce diff output. warning: if the text of an error message concerning `redir1.*' not being warning: found or messages concerning bad file descriptors produce diff warning: output, please do not consider it a test failure 142,143c142 < ./redir10.sub: line 17: syntax error near unexpected token `<' < ./redir10.sub: line 17: ` done 3< <(echo x)' --- > :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 148c147 < after: 7 --- > after: 42 156c155 < after: 7 --- > after: 42 161,162c160 < ./redir12.sub: line 2: syntax error near unexpected token `(' < ./redir12.sub: line 2: `cat <(exit 123) >/dev/null' --- > 123 ... run-varenv 35c35 < declare -rx SHELLOPTS="braceexpand:hashall:interactive-comments:physical" --- > declare -r > SHELLOPTS="braceexpand:hashall:interactive-comments:physical" 72c72 < declare -irx outside1="1" --- > declare -ir outside1="1" 77c77 < declare -irx myvar="1" --- > declare -ir myvar="1" Thank you -- Vlad
# There are three problems fixed # a) our build system exports SHELLOPTS which makes testing fail # We could have set "unexport SHELLOPTS" in our Makefile, but maybe this # will be accepted by community? # b) Test for a /tmp/xx leftover from running the giant bash # test harness. This can happen in the test harness run is # interrupted with ^C. # Without this test, the test harness will start failing # for no real reason. # c) This script runs all the tests via 'sh <test>'. The problem is that 'sh' # might not necesarily be bash. And might produce errors --- tests/run-all 2016-11-28 00:46:51.812583704 -0800 +++ tests/run-all 2016-11-28 00:45:20.302845042 -0800 @@ -17,7 +17,7 @@ export PATH # unset BASH_ENV only if it is set [ "${BASH_ENV+set}" = "set" ] && unset BASH_ENV # ditto for SHELLOPTS -#[ "${SHELLOPTS+set}" = "set" ] && unset SHELLOPTS +[ "${SHELLOPTS+set}" = "set" ] && unset SHELLOPTS : ${THIS_SH:=../bash} export THIS_SH @@ -26,6 +26,11 @@ ${THIS_SH} ./version rm -f ${BASH_TSTOUT} +if [ -f /tmp/xx ] ; then + echo "someone left a /tmp/xx around. I can't test." + exit 1 +fi + echo Any output from any test, unless otherwise noted, indicates a possible anomaly for x in run-* @@ -33,7 +38,7 @@ do case $x in $0|run-minimal|run-gprof) ;; *.orig|*~) ;; - *) echo $x ; sh $x ; rm -f ${BASH_TSTOUT} ;; + *) echo $x ; ${THIS_SH} $x ; rm -f ${BASH_TSTOUT} ;; esac done