From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21833 invoked by alias); 28 Feb 2011 10:22:45 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 28811 Received: (qmail 1450 invoked from network); 28 Feb 2011 10:22:31 -0000 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, SPF_HELO_PASS autolearn=ham version=3.3.1 Received-SPF: none (ns1.primenet.com.au: domain at csr.com does not designate permitted sender hosts) Date: Mon, 28 Feb 2011 09:49:31 +0000 From: Peter Stephenson To: Subject: Re: Crash bug in typeset -T Message-ID: <20110228094931.7deaa547@pwslap01u.europe.root.pri> In-Reply-To: <110227223740.ZM5361@torch.brasslantern.com> References: <110227223740.ZM5361@torch.brasslantern.com> Organization: Cambridge Silicon Radio X-Mailer: Claws Mail 3.7.8 (GTK+ 2.22.0; i386-redhat-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.103.11.49] X-Scanned-By: MailControl A_10_80_00 (www.mailcontrol.com) on 10.68.0.157 On Sun, 27 Feb 2011 22:37:40 -0800 Bart Schaefer wrote: > Obviously "typeset -T" needs to check if it's being applied to a > parameter that's already tied ... but what should it do in that > case? Error? Within looking in any detail, I think it's going to have to be an error. The reason you need to unset variables to retie them is that undoing it is a lot of tricky code all over the place creating messy special cases. The real fix is the same real fix as to most typeset problems: the code should delegate much more to functions for different types of variables reached via a uniform interface. -- Peter Stephenson Software Engineer Tel: +44 (0)1223 692070 Cambridge Silicon Radio Limited Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, UK Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom