summaryrefslogtreecommitdiffstats
path: root/Test
diff options
context:
space:
mode:
authorBart Schaefer <schaefer@zsh.org>2023-02-14 17:54:42 -0800
committerBart Schaefer <schaefer@zsh.org>2023-02-14 17:54:42 -0800
commit32cceefa95903190829af26723b7ad51c163040c (patch)
tree08fb3d46e4ae86001181549988b0fb64256e916c /Test
parent51424: $(<...) shouldn't try to open a file with NO_EXEC (diff)
downloadzsh-32cceefa95903190829af26723b7ad51c163040c.tar
zsh-32cceefa95903190829af26723b7ad51c163040c.tar.gz
zsh-32cceefa95903190829af26723b7ad51c163040c.tar.bz2
zsh-32cceefa95903190829af26723b7ad51c163040c.tar.lz
zsh-32cceefa95903190829af26723b7ad51c163040c.tar.xz
zsh-32cceefa95903190829af26723b7ad51c163040c.tar.zst
zsh-32cceefa95903190829af26723b7ad51c163040c.zip
51437: Fix incorrectly-passed test case, masked by unrelated bug.
A bug with zmodload when unloading/reloading a static module caused the state of the shell options to change during K01 test. Worked around it. Also changed warnnestedvar messages to look more like other such.
Diffstat (limited to 'Test')
-rw-r--r--Test/K01nameref.ztst23
1 files changed, 21 insertions, 2 deletions
diff --git a/Test/K01nameref.ztst b/Test/K01nameref.ztst
index d240e4917..6a5e767df 100644
--- a/Test/K01nameref.ztst
+++ b/Test/K01nameref.ztst
@@ -532,6 +532,13 @@ F:Same test, should part 5 output look like this?
>nameref-local-nameref-local
>typeset parameters
+ if [[ $options[typesettounset] != on ]]; then
+ ZTST_skip='Ignoring zmodload bug that resets TYPESET_TO_UNSET'
+ setopt typesettounset
+ fi
+0:options reloaded
+F:Checking for a bug in zmodload that affects later tests
+
typeset ptr2=var2
typeset var2=GLOBAL
() {
@@ -541,7 +548,7 @@ F:Same test, should part 5 output look like this?
typeset var2=VAR2
print -r -- ${(P)ptr1}
}
-0:
+0:Order of evaluation with ${(P)...}
>VAR2
ary=(one two three four)
@@ -666,7 +673,19 @@ F:Same test, should part 5 output look like this?
>
>scalar-local
>
-*?*ref: global reference to local variable: one
+*?*reference ref*to local variable one
+
+ unset -n ref
+ typeset -n ref
+ () {
+ setopt localoptions warn_nested_var
+ typeset inner
+ ref=inner
+ }
+ typeset -p ref
+0:Global variable is a reference, warning
+>typeset -n ref=inner
+*?*reference ref*to local variable inner
typeset -n ptr='ary[$(echo 2)]'
typeset -a ary=(one two three)