Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
crash with nameref and local argv
- X-seq: zsh-workers 53760
- From: Mikael Magnusson <mikachu@xxxxxxxxx>
- To: zsh workers <zsh-workers@xxxxxxx>
- Subject: crash with nameref and local argv
- Date: Tue, 10 Jun 2025 13:11:55 +0200
- Archived-at: <https://zsh.org/workers/53760>
- List-id: <zsh-workers.zsh.org>
% () { local argv=( $argv ); typeset -nu foo=argv; echo $foo }
Program received signal SIGSEGV, Segmentation fault.
getvaluearr (v=0x7fffffffbc60) at params.c:691
691 return v->arr = v->pm->gsu.a->getfn(v->pm);
(gdb) bt
#0 getvaluearr (v=0x7fffffffbc60) at params.c:691
#1 0x0000000000483555 in getarrvalue (v=0x7fffffffbc60) at params.c:2539
#2 0x00000000004b0d76 in paramsubst (l=0x7ffff7fbf3a0, n=0x7ffff7fbf3d0,
str=0x7fffffffbda0, qt=0, pf_flags=0, ret_flags=0x7fffffffbeb4) at
subst.c:2924
#3 0x00000000004ab2a9 in stringsubst (list=0x7ffff7fbf3a0,
node=0x7ffff7fbf3d0, pf_flags=0,
ret_flags=0x7fffffffbeb4, asssub=0) at subst.c:322
(gdb) list
686 getvaluearr(Value v)
687 {
688 if (v->arr)
689 return v->arr;
690 else if (PM_TYPE(v->pm->node.flags) == PM_ARRAY)
691 return v->arr = v->pm->gsu.a->getfn(v->pm);
692 else if (PM_TYPE(v->pm->node.flags) == PM_HASHED) {
693 v->arr = paramvalarr(v->pm->gsu.h->getfn(v->pm), v->isarr);
694 /* Can't take numeric slices of associative arrays */
695 v->start = 0;
(gdb) p v->pm
$1 = (Param) 0x51fe60
(gdb) p v->pm->gsu.a
$2 = (GsuArray) 0x0
--
Mikael Magnusson
Messages sorted by:
Reverse Date,
Date,
Thread,
Author