Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Mysteriously changing parameters and options within a function.
- X-seq: zsh-workers 18887
- From: Philippe Troin <phil@xxxxxxxx>
- To: Peter Stephenson <pws@xxxxxxx>
- Subject: Re: Mysteriously changing parameters and options within a function.
- Date: 22 Jul 2003 13:00:33 -0700
- Cc: zsh-workers@xxxxxxxxxx
- In-reply-to: <25763.1058806651@xxxxxxx>
- Mail-copies-to: nobody
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <25763.1058806651@xxxxxxx>
- Sender: Philippe Troin <phil@xxxxxxxx>
Peter Stephenson <pws@xxxxxxx> writes:
> Philippe Troin wrote:
> > However, I get this:
> >
> > % check-missing-locals :
> > check-missing-locals: changed option braceexpand: on vs. off
> > check-missing-locals: unset parameter LANG
> > check-missing-locals: unset parameter LC_ALL
> > check-missing-locals: unset parameter LC_COLLATE
> > check-missing-locals: unset parameter LC_CTYPE
> > check-missing-locals: unset parameter LC_MESSAGES
> > check-missing-locals: unset parameter LC_NUMERIC
> > check-missing-locals: unset parameter LC_TIME
> >
> > What makes LANG, LC_* and the braceexpand option appear to be in
> > different states at the beginning and the end of the function?
>
> I don't think the parameter module should be showing unset parameters
> when you ask it for a list of parameters which are set.
>
> I can't show up the bug with braceexpand, which is probably something
> different. There was a bug fixed back in March:
>
> * 18325: Src/Modules/parameter.c: options on by default weren't
> handled correctly.
>
> but I don't think that's it either.
I cannot see the braceexpand problem with the current CVS tree.
>
> Index: Src/Modules/parameter.c
> ===================================================================
> RCS file: /cvsroot/zsh/zsh/Src/Modules/parameter.c,v
> retrieving revision 1.23
> diff -u -r1.23 parameter.c
> --- Src/Modules/parameter.c 7 Mar 2003 12:31:12 -0000 1.23
> +++ Src/Modules/parameter.c 21 Jul 2003 16:54:48 -0000
> @@ -181,6 +181,8 @@
>
> for (i = 0; i < realparamtab->hsize; i++)
> for (hn = realparamtab->nodes[i]; hn; hn = hn->next) {
> + if (((Param)hn)->flags & PM_UNSET)
> + continue;
> pm.nam = hn->nam;
> if (func != scancountparams &&
> ((flags & (SCANPM_WANTVALS|SCANPM_MATCHVAL)) ||
I can confirm that this patch fixes the problem for LANG and the LC_*
variables.
Please consider applying the patch to CVS.
Phil.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author