From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: ludovic.courtes@laas.fr (Ludovic =?iso-8859-1?Q?Court=E8s?=) Newsgroups: gmane.lisp.guile.devel Subject: Re: [PATCH] Marking weak alist vectors, #2 Date: Thu, 24 Nov 2005 10:01:10 +0100 Organization: LAAS-CNRS Message-ID: <87wtiy5six.fsf@laas.fr> References: <87y83z3vh5.fsf@laas.fr> <4371CF46.4010708@xs4all.nl> <87y83xkcq6.fsf@laas.fr> <87sltny8dh.fsf_-_@laas.fr> <4385108B.9090005@xs4all.nl> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1132831371 773 80.91.229.2 (24 Nov 2005 11:22:51 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 24 Nov 2005 11:22:51 +0000 (UTC) Cc: guile-devel@gnu.org Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Thu Nov 24 12:22:41 2005 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1EfFAr-00069R-9N for guile-devel@m.gmane.org; Thu, 24 Nov 2005 12:21:57 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EfF8z-0003nO-Gy for guile-devel@m.gmane.org; Thu, 24 Nov 2005 06:20:01 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1EfCzH-0000A6-0A for guile-devel@gnu.org; Thu, 24 Nov 2005 04:01:51 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1EfCzB-00009b-7M for guile-devel@gnu.org; Thu, 24 Nov 2005 04:01:48 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1EfCz7-00009R-Ef for guile-devel@gnu.org; Thu, 24 Nov 2005 04:01:41 -0500 Original-Received: from [140.93.0.15] (helo=laas.laas.fr) by monty-python.gnu.org with esmtp (TLS-1.0:DHE_RSA_3DES_EDE_CBC_SHA:24) (Exim 4.34) id 1EfCz6-0002WO-Sx for guile-devel@gnu.org; Thu, 24 Nov 2005 04:01:41 -0500 Original-Received: by laas.laas.fr (8.13.1/8.13.4) with SMTP id jAO91c1g015038; Thu, 24 Nov 2005 10:01:38 +0100 (CET) Original-To: Han-Wen Nienhuys X-URL: http://www.laas.fr/~lcourtes/ X-Revolutionary-Date: 4 Frimaire an 214 de la =?iso-8859-1?Q?R=E9volution?= X-PGP-Key-ID: 0xEB1F5364 X-PGP-Key: http://www.laas.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 821D 815D 902A 7EAB 5CEE D120 7FBA 3D4F EB1F 5364 X-OS: powerpc-unknown-linux-gnu Mail-Followup-To: Han-Wen Nienhuys , guile-devel@gnu.org In-Reply-To: <4385108B.9090005@xs4all.nl> (Han-Wen Nienhuys's message of "Thu, 24 Nov 2005 01:59:55 +0100") User-Agent: Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux) X-Spam-Score: 0 () X-Scanned-By: MIMEDefang at CNRS-LAAS X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:5420 Archived-At: Hi, Han-Wen Nienhuys writes: > No, this is not cyclic. The problem is a situation where key A is > associated to key A, eg. > > (define x (cons 1 2)) > (set-cdr! x s) > (weak-key-hash-table-set! table s x) > > x points back to s, and s is a key in the table. Ah, alright. Well yes, the new patch does handle it, the previous one didn't. The issue at hand was similar to the one which showed up in my "cascading weak keys" example. $ ../pre-inst-guile --no-debug guile> (use-modules (ice-9 weak-vector)) guile> (define t (make-weak-key-alist-vector 12)) guile> (define s (string-copy "chbouib")) guile> (hashq-set! t s (cons s 1)) ("chbouib" . 1) guile> (set! s #f) guile> (gc) guile> t #wh(() () () () () () () () () () () ()) Thanks, Ludovic. _______________________________________________ Guile-devel mailing list Guile-devel@gnu.org http://lists.gnu.org/mailman/listinfo/guile-devel