diff options
author | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2015-02-12 19:48:50 +0000 |
---|---|---|
committer | Peter Stephenson <p.w.stephenson@ntlworld.com> | 2015-02-12 19:48:50 +0000 |
commit | 7e6faf7237b1862fce3ebc34f09ee9ac07940638 (patch) | |
tree | cbe81d8d2469253401213aa063aa7abc501244d9 | |
parent | ae7dcab5ed1882b6115c9fe3ab7894a8b6a7e9eb (diff) | |
download | zsh-7e6faf7237b1862fce3ebc34f09ee9ac07940638.tar.gz zsh-7e6faf7237b1862fce3ebc34f09ee9ac07940638.tar.xz zsh-7e6faf7237b1862fce3ebc34f09ee9ac07940638.zip |
34519: $_ for arguments of anonymous function
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | Src/exec.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 47c3c8d1b..2660e4f22 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2015-02-12 Peter Stephenson <p.w.stephenson@ntlworld.com> + + * 34519: Src/exec.c: handle $_ with arguments to anonymous + function. + 2015-02-12 Barton E. Schaefer <schaefer@zsh.org> * 34514: Src/exec.c, Src/parse.c, Test/E01options.ztst: diff --git a/Src/exec.c b/Src/exec.c index 3b0e936b4..302e2b510 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -4456,7 +4456,7 @@ execfuncdef(Estate state, Eprog redir_prog) if (!names) { /* * Anonymous function, execute immediately. - * Function name is "(anon)", parameter list is empty. + * Function name is "(anon)". */ LinkList args; @@ -4477,6 +4477,9 @@ execfuncdef(Estate state, Eprog redir_prog) } } + setunderscore((args && nonempty(args)) ? + ((char *) getdata(lastnode(args))) : ""); + if (!args) args = newlinklist(); shf->node.nam = "(anon)"; |