On Thu 23 Jun 2016 21:23, David Pirotte <da...@altosw.be> writes: > Hi Andy, > >> > (define-module (a) >> > #:use-module (oop goops) >> > #:export (<a> >> > !width >> > get-width >> > set-width)) > >> Here you export four bindings: one class and three generics. Those >> three generics have methods on <a>. > >> > (define-module (b) >> > #:use-module (oop goops) >> > #:use-module (a) > >> Here you import the previous four bindings. > >> > #:export (<b> >> > !width >> > get-width >> > set-width)) > >> However here you declare that you are going to export four new >> bindings. >> ... > > Under the exact circumstances of the original email, I disagree, see below.
I see. You were expecting for the dynamically setting the default-duplicate-binding-handler parameter to make a difference. However I think this is maybe not the right way to set this up; see reasoning in http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20093. However... I believe merge-generics is intended to merge duplicate imported bindings. It does not provide a copy-on-write version of an imported generic, if that generic was not duplicated in the imports. There is no facility in GOOPS to do that, AFAIU. Did I get it right this time? :) Andy