From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: Adding rassq-delete-all to lisp/subr.el. Date: Thu, 21 Apr 2005 11:30:38 -0400 Message-ID: References: <87k6my7v56.fsf@xs4all.nl> <851x967qc5.fsf@lola.goethe.zz> <877jiy68hv.fsf@xs4all.nl> <854qe267rp.fsf@lola.goethe.zz> Reply-To: rms@gnu.org NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1114098608 23521 80.91.229.2 (21 Apr 2005 15:50:08 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 21 Apr 2005 15:50:08 +0000 (UTC) Cc: Lute.Kamstra.lists@xs4all.nl, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Apr 21 17:50:05 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1DOdvR-0007D2-09 for ged-emacs-devel@m.gmane.org; Thu, 21 Apr 2005 17:49:09 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DOe09-00035D-In for ged-emacs-devel@m.gmane.org; Thu, 21 Apr 2005 11:54:01 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1DOdue-0000Nv-Rv for emacs-devel@gnu.org; Thu, 21 Apr 2005 11:48:20 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1DOdud-0000NF-Nn for emacs-devel@gnu.org; Thu, 21 Apr 2005 11:48:20 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1DOdud-0007Cw-E4 for emacs-devel@gnu.org; Thu, 21 Apr 2005 11:48:19 -0400 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1DOdgN-0004L5-Rf for emacs-devel@gnu.org; Thu, 21 Apr 2005 11:33:35 -0400 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.34) id 1DOddW-0005mT-MN; Thu, 21 Apr 2005 11:30:38 -0400 Original-To: David Kastrup In-reply-to: <854qe267rp.fsf@lola.goethe.zz> (message from David Kastrup on Tue, 19 Apr 2005 18:39:06 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:36237 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:36237 > Strange, (cadr ...) is just a defsubst for (car (cdr ...)). So > compiled it should make no difference. The defsubst binds and unbinds x. I consider that a byte compiler deficiency. In general, the byte compiler cannot omit that binding. It does not know that the binding won't be referred to from one of the functions that is called. However, in this specific case, cadr calls only primitives, so that can't happen. It would not be too hard to change the compiler to recognize that and eliminate the binding. That could be a useful thing to work on, but shouldn't be installed now.