From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9680 invoked from network); 25 May 1998 03:08:03 -0000 Received: from math.gatech.edu (list@130.207.146.50) by ns1.primenet.com.au with SMTP; 25 May 1998 03:08:03 -0000 Received: (from list@localhost) by math.gatech.edu (8.8.5/8.8.5) id XAA26129; Sun, 24 May 1998 23:02:18 -0400 (EDT) Resent-Date: Sun, 24 May 1998 23:02:18 -0400 (EDT) From: Zoltan Hidvegi Message-Id: <199805250302.WAA28908@hzoli.home> Subject: Re: PWD parameter In-Reply-To: <980524191600.ZM10165@candle.brasslantern.com> from Bart Schaefer at "May 24, 98 07:16:00 pm" To: schaefer@brasslantern.com (Bart Schaefer) Date: Sun, 24 May 1998 22:02:28 -0500 (CDT) Cc: zsh-workers@math.gatech.edu X-Mailer: ELM [version 2.4ME+ PL31 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Resent-Message-ID: <"0F-Ek1.0.CO6.vyDQr"@math> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/3997 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu > } This is exacly how zsh behaves after typeset +r PWD. > > Not quite. For example, my $HOME is /home/schaefer, but that's really a > symlink to /extra/home/schaefer. In zsh 3.0.5, if I do > > cd $HOME > typeset +r PWD > unset PWD > PWD=/extra/home/schaefer > echo $PWD > > then what I get back is /home/schaefer. *That* seems a bit odd. PWD has nullsetfn as the write function. Since PWD is special, unset just sets a flag in the Param node, it does not really unset anything. The PWD=... assignment clears this flag, restoring the old value of PWD. The assigned value is lost. Zoltan