busybox/shell/ash_test/ash-misc
Denys Vlasenko fbf44854a3 hush: support "f() (cmd)" functions
Many other shells support this construct

function                                             old     new   delta
parse_stream                                        2950    3018     +68

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-03 14:56:52 +02:00
..
and-or.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
and-or.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment2.right shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
assignment2.tests shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
assignment3.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment3.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment4.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment4.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
assignment5.right hush: fix "set -e; false || x=1; echo OK" 2018-04-03 11:21:13 +02:00
assignment5.tests hush: fix "set -e; false || x=1; echo OK" 2018-04-03 11:21:13 +02:00
break1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break2.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break2.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break3.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break3.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break4.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break4.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break5.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
break5.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
builtin1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
builtin1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
case1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
case1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
colon.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
colon.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
command2.right ash: add tests for failures of the exec and command builtins 2015-10-30 22:19:06 +01:00
command2.tests ash: add tests for failures of the exec and command builtins 2015-10-30 22:19:06 +01:00
command.right ash: respect -p flag when command builtin is run with -v/-V 2015-10-29 20:05:32 +01:00
command.tests ash: respect -p flag when command builtin is run with -v/-V 2015-10-29 20:05:32 +01:00
compound.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
compound.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
continue1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
continue1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
continue2.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
continue2.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
continue3.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
continue3.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
control_char1.right hush: fix raw ^C handlisg in single-quoted strings 2018-01-13 19:14:27 +01:00
control_char1.tests hush: fix raw ^C handlisg in single-quoted strings 2018-01-13 19:14:27 +01:00
control_char2.right hush: fix handling of ^C in eval 2018-01-11 13:17:30 +01:00
control_char2.tests hush: fix handling of ^C in eval 2018-01-11 13:17:30 +01:00
echo_write_error.right echo: do not retry on write errors 2011-02-07 02:03:51 +01:00
echo_write_error.tests fix file mode 2015-07-13 03:52:32 +02:00
empty_args.right shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
empty_args.tests shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
empty_for2.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
empty_for2.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
empty_for.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
empty_for.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
env_and_func.right shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
env_and_func.tests shell: some additions to *sh-misc/* tests 2017-07-24 18:51:40 +02:00
errexit1.right ash: exit after subshell error when errexit option is set 2016-09-17 23:28:23 +02:00
errexit1.tests ash: exit after subshell error when errexit option is set 2016-09-17 23:28:23 +02:00
eval1.right ash: [EVAL] Make eval with empty arguments return 0 2016-09-29 00:30:31 +02:00
eval1.tests ash: [EVAL] Make eval with empty arguments return 0 2016-09-29 00:30:31 +02:00
eval2.right hush: fix 'eval ""' handling 2016-09-29 01:44:17 +02:00
eval2.tests hush: fix 'eval ""' handling 2016-09-29 01:44:17 +02:00
exec.right ash: add tests for failures of the exec and command builtins 2015-10-30 22:19:06 +01:00
exec.tests ash: add tests for failures of the exec and command builtins 2015-10-30 22:19:06 +01:00
exit1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
exit1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
exitcode1.right ash: eval: Return status in eval functions 2016-09-28 19:41:57 +02:00
exitcode1.tests ash: eval: Return status in eval functions 2016-09-28 19:41:57 +02:00
exitcode2.right ash: fix error code regression 2017-01-03 11:18:23 +01:00
exitcode2.tests ash: fix error code regression 2017-01-03 11:18:23 +01:00
exitcode_EACCES.right ash testsuite: fix false positives 2016-10-07 04:07:05 +02:00
exitcode_EACCES.tests sh testsuite: add tests for exitcode on failure to exec 2016-10-03 00:55:34 +02:00
exitcode_ENOENT.right ash testsuite: fix false positives 2016-10-07 04:07:05 +02:00
exitcode_ENOENT.tests sh testsuite: add tests for exitcode on failure to exec 2016-10-03 00:55:34 +02:00
for_with_bslashes.right hush: fix raw ^C handlisg in single-quoted strings 2018-01-13 19:14:27 +01:00
for_with_bslashes.tests hush: fix raw ^C handlisg in single-quoted strings 2018-01-13 19:14:27 +01:00
for_with_keywords.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
for_with_keywords.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
for.right ash: allow newline after variable name in for loop 2015-10-29 19:30:55 +01:00
for.tests ash: allow newline after variable name in for loop 2015-10-29 19:30:55 +01:00
func1.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func1.tests ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func2.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func2.tests ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func3.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func3.tests ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func4.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func4.tests ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func5.right hush: support "f() (cmd)" functions 2018-04-03 14:56:52 +02:00
func5.tests hush: support "f() (cmd)" functions 2018-04-03 14:56:52 +02:00
func_args1.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func_args1.tests hush-misc/func_args1.tests: remove "UNFIXED BUG", it does not fail 2015-11-04 14:50:19 +01:00
func_bash1.right ash: add support for bash 'function' keyword 2015-11-04 19:30:24 +01:00
func_bash1.tests ash: add support for bash 'function' keyword 2015-11-04 19:30:24 +01:00
func_compound1.right hush: support "f() (cmd)" functions 2018-04-03 14:56:52 +02:00
func_compound1.tests hush: support "f() (cmd)" functions 2018-04-03 14:56:52 +02:00
func_local1.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func_local1.tests ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func_local2.right ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func_local2.tests ash: copy function tests from hush testsuite 2015-11-04 14:48:16 +01:00
func_prio_over_builtins.right hush: functions have priority over builtins (!) 2017-07-31 05:27:09 +02:00
func_prio_over_builtins.tests hush: functions have priority over builtins (!) 2017-07-31 05:27:09 +02:00
func_return1.right hush: fix "true | func_with_return" not allowing return. 2017-07-31 18:02:28 +02:00
func_return1.tests hush: fix "true | func_with_return" not allowing return. 2017-07-31 18:02:28 +02:00
func_return2.right hush: fix "true | func_with_return" not allowing return. 2017-07-31 18:02:28 +02:00
func_return2.tests hush: fix "true | func_with_return" not allowing return. 2017-07-31 18:02:28 +02:00
group_in_braces.right hush: allow { cmd } to not be terminated by semicolon in some cases 2016-11-04 18:46:14 +01:00
group_in_braces.tests hush: allow { cmd } to not be terminated by semicolon in some cases 2016-11-04 18:46:14 +01:00
if_false_exitcode.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
if_false_exitcode.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
last_amp.right
last_amp.tests
local1.right ash: make "locak VAR" unset VAR (bash does that) 2014-03-16 18:41:11 +01:00
local1.tests ash: make "locak VAR" unset VAR (bash does that) 2014-03-16 18:41:11 +01:00
local2.right ash: only allow local variables in functions 2015-10-29 20:33:44 +01:00
local2.tests ash: only allow local variables in functions 2015-10-29 20:33:44 +01:00
nommu1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
nommu1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
nommu2.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
nommu2.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
nommu3.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
nommu3.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
nulltick1.right fix bug 1087. Fix by Leonid (lly.dev AT gmail.com) 2010-02-21 01:26:42 +01:00
nulltick1.tests fix bug 1087. Fix by Leonid (lly.dev AT gmail.com) 2010-02-21 01:26:42 +01:00
opts1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
opts1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
pid.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
pid.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
pipefail.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
pipefail.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
read.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
read.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
return1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
return1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
shift1.right
shift1.tests hush: Print error messages on shift -1 2017-07-06 20:12:44 +02:00
shift.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
shift.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
source1.right ash: fix . builtin 2009-06-14 19:42:12 +02:00
source1.tests ash: fix . builtin 2009-06-14 19:42:12 +02:00
source2.right ash: add two testcases for (not yet fixed) ash bugs 2010-05-17 02:56:18 +02:00
source2.tests ash: fix ". empty_file" exitcode. +5 bytes 2010-05-17 17:10:46 +02:00
source3.right hush: fix ". EMPTY_LINE" not setting $? to 0 2016-09-29 01:27:09 +02:00
source3.tests hush: fix ". EMPTY_LINE" not setting $? to 0 2016-09-29 01:27:09 +02:00
source5.right sh testsuite: sync ash-misc/source* and hush-misc/source* 2016-10-02 18:23:14 +02:00
source5.tests sh testsuite: sync ash-misc/source* and hush-misc/source* 2016-10-02 18:23:14 +02:00
source_argv_and_shift.right hush: fix a bug in argv restoration after sourcing a file 2017-01-09 08:13:21 +01:00
source_argv_and_shift.tests hush: fix a bug in argv restoration after sourcing a file 2017-01-09 08:13:21 +01:00
tickquote1.right ash: remove parsebackquote flag 2015-07-13 03:50:27 +02:00
tickquote1.tests hush: add tickquote1.tests from ash testsuite 2017-07-06 18:31:47 +02:00
unicode1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
unicode1.tests Spelling fixes in comments, documentation, tests and examples 2017-04-17 16:13:32 +02:00
until1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
until1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
wait4.right hush: rework "wait %jobspec" to work in non-interactive shells too 2016-11-08 00:59:29 +01:00
wait4.tests hush: rework "wait %jobspec" to work in non-interactive shells too 2016-11-08 00:59:29 +01:00
wait5.right hush: rework "wait %jobspec" to work in non-interactive shells too 2016-11-08 00:59:29 +01:00
wait5.tests hush: rework "wait %jobspec" to work in non-interactive shells too 2016-11-08 00:59:29 +01:00
wait6.right hush: fix "(sleep 1; exit 3) & sleep 2; echo $?; wait $!; echo $?" 2017-07-07 22:56:02 +02:00
wait6.tests hush: fix "(sleep 1; exit 3) & sleep 2; echo $?; wait $!; echo $?" 2017-07-07 22:56:02 +02:00
while1.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while1.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while2.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while2.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while4.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while4.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while_in_subshell.right ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00
while_in_subshell.tests ash testsuite: add most of hust tests which pass for ash 2016-10-03 00:06:55 +02:00