summaryrefslogtreecommitdiff
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
parent7e0c4406ceba1e021bf37680d6a6b8dcd3dd657f (diff)
downloadzsh-32cceefa95903190829af26723b7ad51c163040c.tar.gz
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)