From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7970 invoked from network); 21 Jul 2003 16:57:52 -0000 Received: from sunsite.dk (130.225.247.90) by ns1.primenet.com.au with SMTP; 21 Jul 2003 16:57:52 -0000 Received: (qmail 27864 invoked by alias); 21 Jul 2003 16:57:39 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 18880 Received: (qmail 27833 invoked from network); 21 Jul 2003 16:57:38 -0000 Received: from localhost (HELO sunsite.dk) (127.0.0.1) by localhost with SMTP; 21 Jul 2003 16:57:38 -0000 X-MessageWall-Score: 0 (sunsite.dk) Received: from [62.189.183.235] by sunsite.dk (MessageWall 1.0.8) with SMTP; 21 Jul 2003 16:57:38 -0000 Received: from EXCHANGE02.csr.com (unverified) by MAILSWEEPER01.cambridgesiliconradio.com (Content Technologies SMTPRS 4.3.10) with ESMTP id for ; Mon, 21 Jul 2003 17:56:56 +0100 Received: from csr.com ([192.168.144.127]) by EXCHANGE02.csr.com with Microsoft SMTPSVC(5.0.2195.5329); Mon, 21 Jul 2003 17:56:15 +0100 To: zsh-workers@sunsite.dk Subject: Re: Mysteriously changing parameters and options within a function. In-reply-to: "Philippe Troin"'s message of "18 Jul 2003 19:06:48 PDT." <87smp346dj.fsf@ceramic.fifi.org> Date: Mon, 21 Jul 2003 17:57:31 +0100 Message-ID: <25763.1058806651@csr.com> From: Peter Stephenson X-OriginalArrivalTime: 21 Jul 2003 16:56:15.0128 (UTC) FILETIME=[FF352980:01C34FA8] 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. 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)) || -- Peter Stephenson Software Engineer CSR Ltd., Science Park, Milton Road, Cambridge, CB4 0WH, UK Tel: +44 (0)1223 692070 ********************************************************************** The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from any computer. **********************************************************************