Denys Vlasenko fbf44854a3 hush: support "f() (cmd)" functions %!s(int64=6) %!d(string=hai) anos
..
and-or.right 715f712d15 move hush-parsing/and-or.tests to hush-misc/* %!s(int64=15) %!d(string=hai) anos
and-or.tests 715f712d15 move hush-parsing/and-or.tests to hush-misc/* %!s(int64=15) %!d(string=hai) anos
assignment1.right 2b576b8e76 hush: fix mishandling of a'b'c=fff as assignments. They are not. %!s(int64=16) %!d(string=hai) anos
assignment1.tests 2b576b8e76 hush: fix mishandling of a'b'c=fff as assignments. They are not. %!s(int64=16) %!d(string=hai) anos
assignment2.right 9793fc576a hush testsuite: fix another false positive %!s(int64=8) %!d(string=hai) anos
assignment2.tests 9793fc576a hush testsuite: fix another false positive %!s(int64=8) %!d(string=hai) anos
assignment3.right 7b4c0fd5f4 hush: fix improper handling of newline and hash chars in few corner cases %!s(int64=14) %!d(string=hai) anos
assignment3.tests 7b4c0fd5f4 hush: fix improper handling of newline and hash chars in few corner cases %!s(int64=14) %!d(string=hai) anos
assignment4.right 29f9b7268a hush: fix misparsing of "... do eval a= ...". Closes 3721 %!s(int64=13) %!d(string=hai) anos
assignment4.tests 29f9b7268a hush: fix misparsing of "... do eval a= ...". Closes 3721 %!s(int64=13) %!d(string=hai) anos
assignment5.right 5fa0505f8a hush: fix "set -e; false || x=1; echo OK" %!s(int64=6) %!d(string=hai) anos
assignment5.tests 5fa0505f8a hush: fix "set -e; false || x=1; echo OK" %!s(int64=6) %!d(string=hai) anos
break1.right 6a2d40f239 hush: support "break N" and "continue N" %!s(int64=16) %!d(string=hai) anos
break1.tests ba2dcccd79 *: trailing empty lines removed %!s(int64=14) %!d(string=hai) anos
break2.right 6a2d40f239 hush: support "break N" and "continue N" %!s(int64=16) %!d(string=hai) anos
break2.tests 6a2d40f239 hush: support "break N" and "continue N" %!s(int64=16) %!d(string=hai) anos
break3.right 6a2d40f239 hush: support "break N" and "continue N" %!s(int64=16) %!d(string=hai) anos
break3.tests 6a2d40f239 hush: support "break N" and "continue N" %!s(int64=16) %!d(string=hai) anos
break4.right 918a34b9e0 hush: fix "while false; ..." exitcode; add testsuites %!s(int64=16) %!d(string=hai) anos
break4.tests 918a34b9e0 hush: fix "while false; ..." exitcode; add testsuites %!s(int64=16) %!d(string=hai) anos
break5.right fcf37c3183 hush: fix break'ing out of {} and () groups; with testcase %!s(int64=16) %!d(string=hai) anos
break5.tests fcf37c3183 hush: fix break'ing out of {} and () groups; with testcase %!s(int64=16) %!d(string=hai) anos
builtin1.right dadfb4975b hush: add #defines to switch off break/continue if loops are not supported %!s(int64=16) %!d(string=hai) anos
builtin1.tests dadfb4975b hush: add #defines to switch off break/continue if loops are not supported %!s(int64=16) %!d(string=hai) anos
case1.right e9bda90e54 hush: fix problems with case in subshells and with "case esac" %!s(int64=15) %!d(string=hai) anos
case1.tests e9bda90e54 hush: fix problems with case in subshells and with "case esac" %!s(int64=15) %!d(string=hai) anos
colon.right dd316dd283 hush: add support for ':'; create testsuite entries %!s(int64=16) %!d(string=hai) anos
colon.tests f8d01d3f66 hush: fix a bug where we were requiring semicolon here: (cmd;) %!s(int64=16) %!d(string=hai) anos
command2.right 6606c519ef hush: add command2.tests from ash tests %!s(int64=7) %!d(string=hai) anos
command2.tests 6606c519ef hush: add command2.tests from ash tests %!s(int64=7) %!d(string=hai) anos
compound.right 342a63d659 hush_test: add some pathological compound list tests %!s(int64=15) %!d(string=hai) anos
compound.tests 4f26c97b9a make compound.tests executable %!s(int64=15) %!d(string=hai) anos
continue1.right 4554b721ad hush: small fix for repeated continue and fix for wrong loop depth count %!s(int64=16) %!d(string=hai) anos
continue1.tests 4554b721ad hush: small fix for repeated continue and fix for wrong loop depth count %!s(int64=16) %!d(string=hai) anos
continue2.right cd418a2670 hush: fix a bunch of obscure while/until/continue bugs %!s(int64=15) %!d(string=hai) anos
continue2.tests 4ed67dd3d5 make hush-misc/*.tests executable %!s(int64=15) %!d(string=hai) anos
continue3.right cd418a2670 hush: fix a bunch of obscure while/until/continue bugs %!s(int64=15) %!d(string=hai) anos
continue3.tests 4ed67dd3d5 make hush-misc/*.tests executable %!s(int64=15) %!d(string=hai) anos
control_char1.right 9809a82b59 hush: fix raw ^C handlisg in single-quoted strings %!s(int64=7) %!d(string=hai) anos
control_char1.tests 9809a82b59 hush: fix raw ^C handlisg in single-quoted strings %!s(int64=7) %!d(string=hai) anos
control_char2.right 1f1911239c hush: fix handling of ^C in eval %!s(int64=7) %!d(string=hai) anos
control_char2.tests 1f1911239c hush: fix handling of ^C in eval %!s(int64=7) %!d(string=hai) anos
echo_write_error.right 8ee2adab21 echo: do not retry on write errors %!s(int64=14) %!d(string=hai) anos
echo_write_error.tests 8ee2adab21 echo: do not retry on write errors %!s(int64=14) %!d(string=hai) anos
empty_args.right f37eb3999b hush: fix handling of empty arguments %!s(int64=15) %!d(string=hai) anos
empty_args.tests f37eb3999b hush: fix handling of empty arguments %!s(int64=15) %!d(string=hai) anos
empty_for.right 6eaf8deddd hush: fix "for a in; do echo 'I should never run'; done" bug %!s(int64=16) %!d(string=hai) anos
empty_for.tests 6eaf8deddd hush: fix "for a in; do echo 'I should never run'; done" bug %!s(int64=16) %!d(string=hai) anos
empty_for2.right ff182a3d68 hush: support "for v; do ... done" syntax (implied 'in "$@"') %!s(int64=16) %!d(string=hai) anos
empty_for2.tests ff182a3d68 hush: support "for v; do ... done" syntax (implied 'in "$@"') %!s(int64=16) %!d(string=hai) anos
env_and_func.right cb6ff25afe hush: fix bug where in "var=val func" var's value is not visible in func %!s(int64=15) %!d(string=hai) anos
env_and_func.tests ca50caacad shell: some additions to *sh-misc/* tests %!s(int64=7) %!d(string=hai) anos
errexit1.right 9fda609a60 hush: add support for "set -e" %!s(int64=7) %!d(string=hai) anos
errexit1.tests 9fda609a60 hush: add support for "set -e" %!s(int64=7) %!d(string=hai) anos
eval1.right 928e2a7ef4 ash: [EVAL] Make eval with empty arguments return 0 %!s(int64=8) %!d(string=hai) anos
eval1.tests 928e2a7ef4 ash: [EVAL] Make eval with empty arguments return 0 %!s(int64=8) %!d(string=hai) anos
eval2.right 78c9c736ab hush: fix 'eval ""' handling %!s(int64=8) %!d(string=hai) anos
eval2.tests 78c9c736ab hush: fix 'eval ""' handling %!s(int64=8) %!d(string=hai) anos
exec.right 3c7167b508 add tests for basic fd open/close/dupe %!s(int64=15) %!d(string=hai) anos
exec.tests 6c9be7f451 hush: heredoc support, based on patch by Mike Frysinger (vapier AT gentoo.org) %!s(int64=15) %!d(string=hai) anos
exit1.right efea9d2819 hush: fix EXIT trap recursion case; check redirection failures %!s(int64=15) %!d(string=hai) anos
exit1.tests efea9d2819 hush: fix EXIT trap recursion case; check redirection failures %!s(int64=15) %!d(string=hai) anos
exitcode1.right eb17b6f6c9 ash: eval: Return status in eval functions %!s(int64=8) %!d(string=hai) anos
exitcode1.tests eb17b6f6c9 ash: eval: Return status in eval functions %!s(int64=8) %!d(string=hai) anos
exitcode2.right ea7d2f6ec0 ash: fix error code regression %!s(int64=8) %!d(string=hai) anos
exitcode2.tests ea7d2f6ec0 ash: fix error code regression %!s(int64=8) %!d(string=hai) anos
exitcode_EACCES.right c775f829db sh testsuite: add tests for exitcode on failure to exec %!s(int64=8) %!d(string=hai) anos
exitcode_EACCES.tests c775f829db sh testsuite: add tests for exitcode on failure to exec %!s(int64=8) %!d(string=hai) anos
exitcode_ENOENT.right c775f829db sh testsuite: add tests for exitcode on failure to exec %!s(int64=8) %!d(string=hai) anos
exitcode_ENOENT.tests c775f829db sh testsuite: add tests for exitcode on failure to exec %!s(int64=8) %!d(string=hai) anos
export-n.right ad4bd0548a hush: export -n support %!s(int64=15) %!d(string=hai) anos
export-n.tests ad4bd0548a hush: export -n support %!s(int64=15) %!d(string=hai) anos
export.right bf25fbccb9 hush: fix handling of } which is not a closing one in { cmd; } %!s(int64=15) %!d(string=hai) anos
export.tests 0b677d8337 hush: fix some TODOs. TODO in export builting: +250 bytes. %!s(int64=15) %!d(string=hai) anos
for.right 112889d706 hush: copy for.tests from ash testsuite %!s(int64=9) %!d(string=hai) anos
for.tests 112889d706 hush: copy for.tests from ash testsuite %!s(int64=9) %!d(string=hai) anos
for_with_bslashes.right 9809a82b59 hush: fix raw ^C handlisg in single-quoted strings %!s(int64=7) %!d(string=hai) anos
for_with_bslashes.tests 9809a82b59 hush: fix raw ^C handlisg in single-quoted strings %!s(int64=7) %!d(string=hai) anos
for_with_keywords.right 733e3fbc2f hush: support "for if in do done then; do echo $if; done" case %!s(int64=16) %!d(string=hai) anos
for_with_keywords.tests 733e3fbc2f hush: support "for if in do done then; do echo $if; done" case %!s(int64=16) %!d(string=hai) anos
func1.right ce4acbbab6 hush: add function tests %!s(int64=15) %!d(string=hai) anos
func1.tests ce4acbbab6 hush: add function tests %!s(int64=15) %!d(string=hai) anos
func2.right ce4acbbab6 hush: add function tests %!s(int64=15) %!d(string=hai) anos
func2.tests ce4acbbab6 hush: add function tests %!s(int64=15) %!d(string=hai) anos
func3.right 3d40d8e655 hush: return builtin by Bayram Kurumahmut (kbayram AT ubicom.com) %!s(int64=15) %!d(string=hai) anos
func3.tests 3d40d8e655 hush: return builtin by Bayram Kurumahmut (kbayram AT ubicom.com) %!s(int64=15) %!d(string=hai) anos
func4.right 572930027d hush: nommu fix for function passing %!s(int64=15) %!d(string=hai) anos
func4.tests 3581c62515 whitespace fixes %!s(int64=15) %!d(string=hai) anos
func5.right 12bcc76e9b hush_test: test for subshell function syntax %!s(int64=15) %!d(string=hai) anos
func5.tests fbf44854a3 hush: support "f() (cmd)" functions %!s(int64=6) %!d(string=hai) anos
func_args1.right d40fa397e4 hush: add two testcases %!s(int64=15) %!d(string=hai) anos
func_args1.tests bc9bee01f3 hush-misc/func_args1.tests: remove "UNFIXED BUG", it does not fail %!s(int64=9) %!d(string=hai) anos
func_local1.right 295fef80bc hush: add support for local builtin %!s(int64=15) %!d(string=hai) anos
func_local1.tests 295fef80bc hush: add support for local builtin %!s(int64=15) %!d(string=hai) anos
func_local2.right 295fef80bc hush: add support for local builtin %!s(int64=15) %!d(string=hai) anos
func_local2.tests 295fef80bc hush: add support for local builtin %!s(int64=15) %!d(string=hai) anos
func_prio_over_builtins.right 75481d3634 hush: functions have priority over builtins (!) %!s(int64=7) %!d(string=hai) anos
func_prio_over_builtins.tests 75481d3634 hush: functions have priority over builtins (!) %!s(int64=7) %!d(string=hai) anos
func_return1.right 5b3d2eb327 hush: fix "true | func_with_return" not allowing return. %!s(int64=7) %!d(string=hai) anos
func_return1.tests 5b3d2eb327 hush: fix "true | func_with_return" not allowing return. %!s(int64=7) %!d(string=hai) anos
func_return2.right 5b3d2eb327 hush: fix "true | func_with_return" not allowing return. %!s(int64=7) %!d(string=hai) anos
func_return2.tests 5b3d2eb327 hush: fix "true | func_with_return" not allowing return. %!s(int64=7) %!d(string=hai) anos
group_in_braces.right 672a55e606 hush: allow { cmd } to not be terminated by semicolon in some cases %!s(int64=8) %!d(string=hai) anos
group_in_braces.tests 672a55e606 hush: allow { cmd } to not be terminated by semicolon in some cases %!s(int64=8) %!d(string=hai) anos
if_false_exitcode.right 0e15138c03 hush: fix "if false; then...fi" exitcode; %!s(int64=15) %!d(string=hai) anos
if_false_exitcode.tests 0e15138c03 hush: fix "if false; then...fi" exitcode; %!s(int64=15) %!d(string=hai) anos
last_amp.right 5d6b8729ed hush testsuite: add many tests from ash testsuite %!s(int64=8) %!d(string=hai) anos
last_amp.tests 5d6b8729ed hush testsuite: add many tests from ash testsuite %!s(int64=8) %!d(string=hai) anos
local1.right 5d6b8729ed hush testsuite: add many tests from ash testsuite %!s(int64=8) %!d(string=hai) anos
local1.tests 5d6b8729ed hush testsuite: add many tests from ash testsuite %!s(int64=8) %!d(string=hai) anos
nommu1.right cbfe6ad4c6 hush: fix \<newline> handling on NOMMU %!s(int64=15) %!d(string=hai) anos
nommu1.tests cbfe6ad4c6 hush: fix \<newline> handling on NOMMU %!s(int64=15) %!d(string=hai) anos
nommu2.right b70cef71eb hush: two NOMMU fixes for bugs 877 and 883 %!s(int64=15) %!d(string=hai) anos
nommu2.tests b70cef71eb hush: two NOMMU fixes for bugs 877 and 883 %!s(int64=15) %!d(string=hai) anos
nommu3.right b5be13ccd9 hush: fix a nommu bug where a part of function body is lost if run in a pipe %!s(int64=9) %!d(string=hai) anos
nommu3.tests 450a367a11 typo fix %!s(int64=9) %!d(string=hai) anos
nulltick1.right 5d6b8729ed hush testsuite: add many tests from ash testsuite %!s(int64=8) %!d(string=hai) anos
nulltick1.tests 5d6b8729ed hush testsuite: add many tests from ash testsuite %!s(int64=8) %!d(string=hai) anos
opts1.right a67a9627d0 hush: do not process options after non-option args %!s(int64=15) %!d(string=hai) anos
opts1.tests a67a9627d0 hush: do not process options after non-option args %!s(int64=15) %!d(string=hai) anos
pid.right 16c2fea280 hush: fix $$ handling %!s(int64=16) %!d(string=hai) anos
pid.tests 16c2fea280 hush: fix $$ handling %!s(int64=16) %!d(string=hai) anos
pipefail.right 6696eac274 hush: add support for "set -o pipefail" %!s(int64=14) %!d(string=hai) anos
pipefail.tests 6696eac274 hush: add support for "set -o pipefail" %!s(int64=14) %!d(string=hai) anos
read.right d67cef2425 hush: fix read builtin to not read ahead past eol and to not use %!s(int64=17) %!d(string=hai) anos
read.tests d67cef2425 hush: fix read builtin to not read ahead past eol and to not use %!s(int64=17) %!d(string=hai) anos
return1.right 68d5cb5dac hush: fix a case where return in sourced file has no effect %!s(int64=13) %!d(string=hai) anos
return1.tests 68d5cb5dac hush: fix a case where return in sourced file has no effect %!s(int64=13) %!d(string=hai) anos
shift.right cd7f4d27a2 hush: improve 2 testsuite tests %!s(int64=17) %!d(string=hai) anos
shift.tests cd7f4d27a2 hush: improve 2 testsuite tests %!s(int64=17) %!d(string=hai) anos
shift1.right e59591a364 hush: Print error messages on shift -1 %!s(int64=7) %!d(string=hai) anos
shift1.tests e59591a364 hush: Print error messages on shift -1 %!s(int64=7) %!d(string=hai) anos
sig_exitcode.right a4899efd03 hush: fix exitcodes of killed processes %!s(int64=15) %!d(string=hai) anos
sig_exitcode.tests a4899efd03 hush: fix exitcodes of killed processes %!s(int64=15) %!d(string=hai) anos
source1.right c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source1.tests c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source2.right c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source2.tests c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source3.right 992e0ff7e9 hush: fix ". EMPTY_LINE" not setting $? to 0 %!s(int64=8) %!d(string=hai) anos
source3.tests 992e0ff7e9 hush: fix ". EMPTY_LINE" not setting $? to 0 %!s(int64=8) %!d(string=hai) anos
source4.right c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source4.tests c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source5.right c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source5.tests c7a774dde4 sh testsuite: sync ash-misc/source* and hush-misc/source* %!s(int64=8) %!d(string=hai) anos
source_argv_and_shift.right 2b1559056c hush: fix a bug in argv restoration after sourcing a file %!s(int64=8) %!d(string=hai) anos
source_argv_and_shift.tests 2b1559056c hush: fix a bug in argv restoration after sourcing a file %!s(int64=8) %!d(string=hai) anos
syntax_err.right db2a9b683a hush: finally make `cmd` safe on NOMMU %!s(int64=15) %!d(string=hai) anos
syntax_err.tests cd7f4d27a2 hush: improve 2 testsuite tests %!s(int64=17) %!d(string=hai) anos
syntax_err_negate.right b6e6556b31 hush: improve parse_stream: does not require parsing context struct; %!s(int64=15) %!d(string=hai) anos
syntax_err_negate.tests a84420062a hush: support "! cmd | cmd" negation %!s(int64=16) %!d(string=hai) anos
tickquote1.right cafb2d195d hush: add tickquote1.tests from ash testsuite %!s(int64=7) %!d(string=hai) anos
tickquote1.tests cafb2d195d hush: add tickquote1.tests from ash testsuite %!s(int64=7) %!d(string=hai) anos
unicode1.right c538d5bcc3 hush: make ${#var} unicode-aware %!s(int64=10) %!d(string=hai) anos
unicode1.tests 10ad622dc2 Spelling fixes in comments, documentation, tests and examples %!s(int64=7) %!d(string=hai) anos
until1.right cd418a2670 hush: fix a bunch of obscure while/until/continue bugs %!s(int64=15) %!d(string=hai) anos
until1.tests 4ed67dd3d5 make hush-misc/*.tests executable %!s(int64=15) %!d(string=hai) anos
wait1.right 7e6753609d hush: fix "wait PID" %!s(int64=8) %!d(string=hai) anos
wait1.tests 7e6753609d hush: fix "wait PID" %!s(int64=8) %!d(string=hai) anos
wait2.right 7e6753609d hush: fix "wait PID" %!s(int64=8) %!d(string=hai) anos
wait2.tests 7e6753609d hush: fix "wait PID" %!s(int64=8) %!d(string=hai) anos
wait3.right 7e6753609d hush: fix "wait PID" %!s(int64=8) %!d(string=hai) anos
wait3.tests 7e6753609d hush: fix "wait PID" %!s(int64=8) %!d(string=hai) anos
wait4.right 02affb4afd hush: rework "wait %jobspec" to work in non-interactive shells too %!s(int64=8) %!d(string=hai) anos
wait4.tests 02affb4afd hush: rework "wait %jobspec" to work in non-interactive shells too %!s(int64=8) %!d(string=hai) anos
wait5.right 02affb4afd hush: rework "wait %jobspec" to work in non-interactive shells too %!s(int64=8) %!d(string=hai) anos
wait5.tests 02affb4afd hush: rework "wait %jobspec" to work in non-interactive shells too %!s(int64=8) %!d(string=hai) anos
wait6.right 840a4355d0 hush: fix "(sleep 1; exit 3) & sleep 2; echo $?; wait $!; echo $?" %!s(int64=7) %!d(string=hai) anos
wait6.tests 840a4355d0 hush: fix "(sleep 1; exit 3) & sleep 2; echo $?; wait $!; echo $?" %!s(int64=7) %!d(string=hai) anos
while1.right 918a34b9e0 hush: fix "while false; ..." exitcode; add testsuites %!s(int64=16) %!d(string=hai) anos
while1.tests 918a34b9e0 hush: fix "while false; ..." exitcode; add testsuites %!s(int64=16) %!d(string=hai) anos
while2.right cd418a2670 hush: fix a bunch of obscure while/until/continue bugs %!s(int64=15) %!d(string=hai) anos
while2.tests 4ed67dd3d5 make hush-misc/*.tests executable %!s(int64=15) %!d(string=hai) anos
while3.right 00ae989ee5 hush: fix a corner case of empty "do \n done" structure %!s(int64=13) %!d(string=hai) anos
while3.tests 00ae989ee5 hush: fix a corner case of empty "do \n done" structure %!s(int64=13) %!d(string=hai) anos
while4.right 3beab83e4f hush: fix for "while false && true; do echo BUG; break; done". closes 6170 %!s(int64=11) %!d(string=hai) anos
while4.tests 3beab83e4f hush: fix for "while false && true; do echo BUG; break; done". closes 6170 %!s(int64=11) %!d(string=hai) anos
while_in_subshell.right f8d01d3f66 hush: fix a bug where we were requiring semicolon here: (cmd;) %!s(int64=16) %!d(string=hai) anos
while_in_subshell.tests f8d01d3f66 hush: fix a bug where we were requiring semicolon here: (cmd;) %!s(int64=16) %!d(string=hai) anos