From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Le Wang Newsgroups: gmane.emacs.bugs Subject: bug#9469: buffer-local variables seem to remember previous values Date: Mon, 12 Sep 2011 03:18:39 +0800 Message-ID: References: <70AD30BE45C847BE828A3E8A71280A8E@us.oracle.com> <95CFAF98BEBE4DFAB885B85F02126C57@us.oracle.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: dough.gmane.org 1315768739 31155 80.91.229.12 (11 Sep 2011 19:18:59 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sun, 11 Sep 2011 19:18:59 +0000 (UTC) Cc: Andreas Schwab , 9469@debbugs.gnu.org To: Lars Magne Ingebrigtsen Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Sep 11 21:18:54 2011 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1R2pYL-0005hB-Jy for geb-bug-gnu-emacs@m.gmane.org; Sun, 11 Sep 2011 21:18:53 +0200 Original-Received: from localhost ([::1]:39589 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R2pYK-0008Qf-Rx for geb-bug-gnu-emacs@m.gmane.org; Sun, 11 Sep 2011 15:18:52 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:45013) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R2pYH-0008QO-5c for bug-gnu-emacs@gnu.org; Sun, 11 Sep 2011 15:18:50 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R2pYD-0004w1-NY for bug-gnu-emacs@gnu.org; Sun, 11 Sep 2011 15:18:49 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:40590) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R2pYD-0004vx-G8 for bug-gnu-emacs@gnu.org; Sun, 11 Sep 2011 15:18:45 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1R2pcM-0003BK-Du; Sun, 11 Sep 2011 15:23:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Le Wang Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 11 Sep 2011 19:23:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 9469 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 9469-submit@debbugs.gnu.org id=B9469.131576898012222 (code B ref 9469); Sun, 11 Sep 2011 19:23:02 +0000 Original-Received: (at 9469) by debbugs.gnu.org; 11 Sep 2011 19:23:00 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1R2pcJ-0003B5-Nu for submit@debbugs.gnu.org; Sun, 11 Sep 2011 15:22:59 -0400 Original-Received: from mail-qy0-f179.google.com ([209.85.216.179]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1R2pcH-0003Ay-Ai for 9469@debbugs.gnu.org; Sun, 11 Sep 2011 15:22:58 -0400 Original-Received: by qyk33 with SMTP id 33so536521qyk.3 for <9469@debbugs.gnu.org>; Sun, 11 Sep 2011 12:18:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=COa2CjjLumKGvwjjwRZk9Cnp7NOrrkNIzTRY8eii790=; b=q8XVKLYizQIYxmtjLI5gAzvIQg233Ec2dNgYRwW8hCC+3FUuW3MUxv735eaSCnUb2a GsrE/KwxEPXNRPJFPIqm+rxY0Cl1konhu+mREbyNJ4pM1WV6mHUK+rEjzt8irykFd3qX mbrLjk9Hq/Jxh2cd2JaptG3jw5Xrvdaw2jfF0= Original-Received: by 10.224.9.211 with SMTP id m19mr1302024qam.77.1315768719810; Sun, 11 Sep 2011 12:18:39 -0700 (PDT) Original-Received: by 10.224.61.1 with HTTP; Sun, 11 Sep 2011 12:18:39 -0700 (PDT) In-Reply-To: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Sun, 11 Sep 2011 15:23:02 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 1) X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:50972 Archived-At: On Mon, Sep 12, 2011 at 2:54 AM, Lars Magne Ingebrigtsen wrote: > If I read your code correctly, Andreas is correct and precise as usual, > if a bit terse. :-) Ok, that was my fault. I didn't know how to make heads or tails of the situation, so included some red herrings in my original snippet. This should clarify my exact point of confusion: (setq foo-alist nil) ;; => nil (defun reset-var-in-foo-alist () (push '(:var . 0) foo-alist)) ;; => reset-var-in-foo-alist (defun increment-var-in-foo-alist () (let ((var-cons (assq :var foo-alist))) (setcdr var-cons (1+ (cdr var-cons))))) ;; => increment-var-in-foo-alist (reset-var-in-foo-alist) ;; => ((:var . 0)) (increment-var-in-foo-alist) ;; => 1 (reset-var-in-foo-alist) ;; => ((:var . 1) (:var . 1)) Again, my misunderstanding was that in `reset-var-in-foo-alist' quote does not cons, I assumed it did. -- Le