From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Building Emacs overflowed pure space Date: Thu, 20 Jul 2006 00:07:42 -0400 Message-ID: References: <7dbe73ed0607180138x35e9d9bft3e42f20cb369795c@mail.gmail.com> <200607181929.k6IJTZN9028639@jane.dms.auburn.edu> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1153368476 21045 80.91.229.2 (20 Jul 2006 04:07:56 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 20 Jul 2006 04:07:56 +0000 (UTC) Cc: emacs-devel@gnu.org, teirllm@dms.auburn.edu, ralphm@members.fsf.org, mituharu@math.s.chiba-u.ac.jp, mathias.dahl@gmail.com Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jul 20 06:07:52 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1G3PpH-0001ze-DD for ged-emacs-devel@m.gmane.org; Thu, 20 Jul 2006 06:07:51 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1G3PpG-0004jm-VC for ged-emacs-devel@m.gmane.org; Thu, 20 Jul 2006 00:07:51 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1G3Pp4-0004jN-Qv for emacs-devel@gnu.org; Thu, 20 Jul 2006 00:07:38 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1G3Pp2-0004j6-G4 for emacs-devel@gnu.org; Thu, 20 Jul 2006 00:07:37 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1G3Pp2-0004j2-9Z for emacs-devel@gnu.org; Thu, 20 Jul 2006 00:07:36 -0400 Original-Received: from [209.226.175.93] (helo=tomts36-srv.bellnexxia.net) by monty-python.gnu.org with esmtp (Exim 4.52) id 1G3Pp7-0003Bv-OO; Thu, 20 Jul 2006 00:07:41 -0400 Original-Received: from localhost ([70.53.192.251]) by tomts36-srv.bellnexxia.net (InterMail vM.5.01.06.13 201-253-122-130-113-20050324) with ESMTP id <20060720040733.JQTW13653.tomts36-srv.bellnexxia.net@localhost>; Thu, 20 Jul 2006 00:07:33 -0400 Original-Received: by localhost (Postfix, from userid 20848) id C8CC290A6; Thu, 20 Jul 2006 00:07:42 -0400 (EDT) Original-To: rms@gnu.org In-Reply-To: (Richard Stallman's message of "Wed, 19 Jul 2006 22:21:56 -0400") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) 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:57365 Archived-At: > The setq can be placed after, but the cdr can't, in case the `body' does > a setcdr on it. > It is (cdr ,temp), referring to the uninterned symbol. (cdr ,temp) contains two operations: one is to look up the var to get its content, and the other is to extract the cdr part of that content. Only the first part is protected by the fact that the symbol is uninterned. > The body cannot refer to that uninterned symbol (that's the whole > point of using one). Indeed, but it may refer to the cons cell. > So it is safe to take the cdr at the end. Maybe it is, but it will subtly change the semantics in case the loop body modifies the list it's loooping over. Stefan