From 791aaf88cca53036d19ad2e247c783744ccf3837 Mon Sep 17 00:00:00 2001 From: Bart Schaefer <schaefer@zsh.org> Date: Sun, 4 Feb 2024 20:46:49 -0800 Subject: [PATCH] cf. users/29635: additional detail of parameter expansion in math context. --- ChangeLog | 3 +++ Doc/Zsh/arith.yo | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index c553b02cf..964eeef23 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2024-02-04 Bart Schaefer <schaefer@zsh.org> + * unposted (cf. users/29635): Doc/Zsh/arith.yo: additional detail + of parameter expansion in math context. + * 52521: Etc/BUGS: mapfile handling of empty/unreadable files 2024-02-04 Mikael Magnusson <mikachu@gmail.com> diff --git a/Doc/Zsh/arith.yo b/Doc/Zsh/arith.yo index bc3e35ad5..9f5298821 100644 --- a/Doc/Zsh/arith.yo +++ b/Doc/Zsh/arith.yo @@ -206,6 +206,11 @@ example, example(((val2 = val1 * 2))) assigns twice the value of tt($val1) to the parameter named tt(val2). +If the expansion of tt($val1) is text rather than a number, then when +tt(val1) is referenced that text is itself evaluated as a math expression +as if surrounded by parentheses `tt(LPAR()$val1)tt(RPAR())'. Expansion +continues until there are no more parameter references, a number has +resulted, or an expression error occurs. An internal integer representation of a named parameter can be specified with the tt(integer) builtin.