From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: "Stefan Monnier " Newsgroups: gmane.emacs.help Subject: Re: garbace collection of point-markers Date: 31 Jan 2003 12:21:01 -0500 Organization: Yale University Sender: help-gnu-emacs-bounces+gnu-help-gnu-emacs=m.gmane.org@gnu.org Message-ID: <5lptqd5j7m.fsf@rum.cs.yale.edu> References: <62ede926.0301310049.17611c1a@posting.google.com> <87znphzl2d.fsf@thalassa.informatimago.com> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1044034786 24498 80.91.224.249 (31 Jan 2003 17:39:46 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Fri, 31 Jan 2003 17:39:46 +0000 (UTC) Return-path: Original-Received: from monty-python.gnu.org ([199.232.76.173]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 18ef8f-0006Mg-00 for ; Fri, 31 Jan 2003 18:39:41 +0100 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.10.13) id 18eevx-0006QB-05 for gnu-help-gnu-emacs@m.gmane.org; Fri, 31 Jan 2003 12:26:33 -0500 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!logbridge.uoregon.edu!news.ycc.yale.edu!rum.cs.yale.edu!rum.cs.yale.edu Original-Newsgroups: gnu.emacs.help Original-Lines: 18 Original-NNTP-Posting-Host: rum.cs.yale.edu User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50 X-Original-NNTP-Posting-Host: rum.cs.yale.edu X-Original-Trace: 31 Jan 2003 12:21:02 -0500, rum.cs.yale.edu Original-Xref: shelby.stanford.edu gnu.emacs.help:109656 Original-To: help-gnu-emacs@gnu.org X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: help-gnu-emacs-bounces+gnu-help-gnu-emacs=m.gmane.org@gnu.org Xref: main.gmane.org gmane.emacs.help:6173 X-Report-Spam: http://spam.gmane.org/gmane.emacs.help:6173 >>>>> "Barry" == Barry Margolin writes: > Your test seems to show that the markers are *not* cleaned up by the GC. They definitely should. If they're not, it's a bug. In the example posted by Pascal, it might simply be that the marker is still referenced from the stack (more specifically, from a stack slot which is actually dead, but the GC doesn't know it). > Buffers keep track of the markers that point to them (so that they can be > updated when the buffer is modified), and that keeps them from becoming > garbage until the buffer is killed. This would be an ideal application for > "weak" references if Emacs Lisp had them, but AFAIK it doesn't. Markers have been handled "weakly" for a long time and Emacs-21 additionally introduced weak hash tables. So, AFAIK it does ;-) Stefan