diff options
| author | Philippe Altherr <philippe.altherr@gmail.com> | 2025-10-26 16:52:51 -0700 |
|---|---|---|
| committer | Bart Schaefer <schaefer@zsh.org> | 2025-10-26 16:52:51 -0700 |
| commit | e1fed5439c5fb844a028af3ac58d5032cc307df7 (patch) | |
| tree | 6e11cfa88243536345729caeeb38ab4c8af78adb /Test | |
| parent | 53781: fix loading of autoload variable via a reference (diff) | |
| download | zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.tar zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.tar.gz zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.tar.bz2 zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.tar.lz zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.tar.xz zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.tar.zst zsh-e1fed5439c5fb844a028af3ac58d5032cc307df7.zip | |
53782: Src/params.c, Test/K01nameref.ztst: changes to nameref base level:
- avoid changing base on assignment;
- omit base level for up-scope references
- do not follow reference chains for base level of new references
Diffstat (limited to 'Test')
| -rw-r--r-- | Test/K01nameref.ztst | 53 |
1 files changed, 44 insertions, 9 deletions
diff --git a/Test/K01nameref.ztst b/Test/K01nameref.ztst index 52aed0af0..b03487d03 100644 --- a/Test/K01nameref.ztst +++ b/Test/K01nameref.ztst @@ -1100,15 +1100,15 @@ F:previously this could create an infinite recursion and crash >h:1: rs= - ra= - rs1= - ra1= >h:2: rs= - ra= - rs1= - ra1= >i:1: rs= - ra= - rs1= - ra1= ->i:2: rs=g - ra=g - rs1=g - ra1=g ->j:1: rs=g - ra=g - rs1=g - ra1=g ->j:2: rs=g - ra=g - rs1=g - ra1=g ->i:3: rs=g - ra=g - rs1=g - ra1=g ->k:1: rs=g - ra=g - rs1=g - ra1=g ->k:2: rs=g - ra=g - rs1=g - ra1=g ->h:3: rs=g - ra=g - rs1=g - ra1=g ->k:1: rs=g - ra=g - rs1=g - ra1=g ->k:2: rs=g - ra=g - rs1=g - ra1=g +>i:2: rs=f - ra=f - rs1=f - ra1=f +>j:1: rs=f - ra=f - rs1=f - ra1=f +>j:2: rs=f - ra=f - rs1=f - ra1=f +>i:3: rs=f - ra=f - rs1=f - ra1=f +>k:1: rs=f - ra=f - rs1=f - ra1=f +>k:2: rs=f - ra=f - rs1=f - ra1=f +>h:3: rs=f - ra=f - rs1=f - ra1=f +>k:1: rs=f - ra=f - rs1=f - ra1=f +>k:2: rs=f - ra=f - rs1=f - ra1=f >g:3: rs=f - ra=f - rs1=f - ra1=f e '' 6 @@ -1237,4 +1237,39 @@ F:previously this could create an infinite recursion and crash ?(eval):zsh/random:6: error when adding parameter `SRANDOM' ?(eval):6: autoloading module zsh/random failed to define parameter: SRANDOM + () { + typeset var1=var1 + typeset var2=var2 + typeset -n ref1=var1 + echo "ref1=$ref1"; + () { + typeset -n ref1=var2 + typeset -n ref2=ref1 + echo "ref1=$ref1"; + echo "ref2=$ref2"; + } + } +0:regression: don't follow references when computing base scope - part 1 +>ref1=var1 +>ref1=var2 +>ref2=var2 + + () { + typeset var1=var1 + typeset -n ref1=var1 + echo ref1=$ref1; + () { + typeset var2=var2 + typeset -n ref1 + typeset -n ref2=ref1 + ref1=var2 + echo ref1=$ref1; + echo ref2=$ref2; + } + } +0:regression: don't follow references when computing base scope - part 2 +>ref1=var1 +>ref1=var2 +>ref2=var2 + %clean |
