From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Andy Wingo Newsgroups: gmane.lisp.guile.bugs Subject: Re: module system / (oop goops) / :duplicates (merge-generics) / bug? Date: Thu, 07 Jul 2011 13:37:36 +0200 Message-ID: <87ipre48zj.fsf@pobox.com> References: <20110705183229.6f779a6b@rascar> <87vcvfcrjc.fsf@gnu.org> <20110706162244.2bf4b90a@rascar> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1310039775 14528 80.91.229.12 (7 Jul 2011 11:56:15 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 7 Jul 2011 11:56:15 +0000 (UTC) Cc: bug-guile@gnu.org, Ludovic =?utf-8?Q?Court=C3=A8s?= To: David Pirotte Original-X-From: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Thu Jul 07 13:56:10 2011 Return-path: Envelope-to: guile-bugs@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 1QenBg-00073z-6U for guile-bugs@m.gmane.org; Thu, 07 Jul 2011 13:56:08 +0200 Original-Received: from localhost ([::1]:44189 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QenBf-0001Je-6Y for guile-bugs@m.gmane.org; Thu, 07 Jul 2011 07:56:07 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:51328) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qen29-0007Tg-ME for bug-guile@gnu.org; Thu, 07 Jul 2011 07:46:20 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Qen20-0003Mi-IF for bug-guile@gnu.org; Thu, 07 Jul 2011 07:46:17 -0400 Original-Received: from a-pb-sasl-sd.pobox.com ([64.74.157.62]:59138 helo=sasl.smtp.pobox.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Qen1y-0003Kg-18; Thu, 07 Jul 2011 07:46:06 -0400 Original-Received: from sasl.smtp.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id AA7FD5458; Thu, 7 Jul 2011 07:46:05 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=sasl; bh=yPmaNU8PTkUIaGEmW9WEl3mmZsA=; b=YIgmWn sVfm5A692oID8b1outCR0UvxPh9fsh8lnRNUnkFg/6qzRUvfs0DRO8weoMq8v+id 03uaVF+nFFk3AUJ0PcCf489A2fkvkxIel1WU1F53mOKtUnjO04PWjd0Zn/PZtKdh vUk0CUS+HMSbQaVyxEZAj39HiItsSVWqHzVOE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=pobox.com; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; q=dns; s=sasl; b=ECYvMUs9um39HEWkyOrJ9Ab45hcti787 s5zv22f9HCdD42A6vPNzYpNSwq1+1xCH4kgn0LQZRSD40NbLTaBsDr0k1/PuF0k+ 9OH+Uufh40MzemR4HX5nfa3NvX6rZy3N+ONq9VN9NNsjBTOTar2/PkCHGbyopSSO yjpOwkOpmWI= Original-Received: from a-pb-sasl-sd.pobox.com (unknown [127.0.0.1]) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTP id 8E4EC5457; Thu, 7 Jul 2011 07:46:05 -0400 (EDT) Original-Received: from badger (unknown [90.164.198.39]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by a-pb-sasl-sd.pobox.com (Postfix) with ESMTPSA id 8D8175456; Thu, 7 Jul 2011 07:46:04 -0400 (EDT) In-Reply-To: <20110706162244.2bf4b90a@rascar> (David Pirotte's message of "Wed, 6 Jul 2011 16:22:44 -0300") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.3 (gnu/linux) X-Pobox-Relay-ID: B20E37EE-A88E-11E0-AA2B-5875C023C68D-02397024!a-pb-sasl-sd.pobox.com X-detected-operating-system: by eggs.gnu.org: Solaris 10 (beta) X-Received-From: 64.74.157.62 X-BeenThere: bug-guile@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Bug reports for GUILE, GNU's Ubiquitous Extension Language" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Original-Sender: bug-guile-bounces+guile-bugs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.bugs:5711 Archived-At: Hi David, A few notes apart from Ludovic's excellent suggestions. On Wed 06 Jul 2011 21:22, David Pirotte writes: > (define-module (mg-1) > :use-module (oop goops) > > :duplicates (merge-generics) > > :export ( > dialog > )) Here the #:duplicates is unnecessary, because you are not importing any duplicate bindings. > (define-module (mg-3) > :use-module (ice-9 format) > :use-module (oop goops) > :use-module (mg-1) > :use-module (mg-2) > > :duplicates (merge-generics) > > :export (a > b > letstry)) But here you need other duplicates handlers, not just merge-generics; merge-generics doesn't handle the other (default-duplicates-handlers). So you could change to have: #:duplicates (merge-generics replace warn-override-core warn last) But even now it didn't work, because of some deep bugs that have been lurking in merge-generics support since 2007 at least (though not present in 1.8). I believe I have fixed these; can you update and test? Thanks, Andy -- http://wingolog.org/