busybox/shell/hush_test/hush-parsing/groups_and_keywords2.tests
Denys Vlasenko 39701204cf hush: do not accept "if() { echo; }" function def
function                                             old     new   delta
parse_stream                                        2634    2692     +58
msg_and_die_if_script                                  -      21     +21
syntax_error_unexpected_ch                            41      46      +5
syntax_error_at                                       14      18      +4
die_if_script                                         31      28      -3
setup_redirects                                      319     308     -11
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/2 up/down: 88/-14)             Total: 74 bytes

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2017-08-02 19:46:14 +02:00

10 lines
203 B
Plaintext
Executable File

# This is an error
(eval 'if() { echo; }')
echo Fail:$?
# ^^^^^^ bash prints 1, but interactively it sets $? = 2
# we print 2
# This is an error, and it aborts in script
if() { echo; }
echo Not reached