From e4e9afe373479076ee448b16944a421836ba5a40 Mon Sep 17 00:00:00 2001 From: Bart Schaefer Date: Sat, 23 Sep 2023 09:30:55 -0500 Subject: 52180: clarify array behavior of ${|var|...} and REPLY --- Doc/Zsh/expn.yo | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Doc/Zsh') diff --git a/Doc/Zsh/expn.yo b/Doc/Zsh/expn.yo index 86a5f70c8..837a85db6 100644 --- a/Doc/Zsh/expn.yo +++ b/Doc/Zsh/expn.yo @@ -1915,8 +1915,9 @@ Substitutions of the form `tt(${|)var(param)tt(|)...tt(})' are similar, except that the substitution is replaced by the value of the parameter named by var(param). No implicit save or restore applies to var(param) except as noted for tt(REPLY), and var(param) should em(not) be declared -within the command. If var(param) names an array, array expansion rules -apply. +within the command. If, after evaluating the expression, var(param) +names an array, array expansion rules apply. However, tt(REPLY) is +always expanded in scalar context, even if assigned an array. A command enclosed in braces preceded by a dollar sign, and set off from the braces by whitespace, like `tt(${ )...tt( })', is replaced by its -- cgit 1.4.1