Bob & Lex, I just ran into an "interesting" error message while experimenting with some JSO stuff that you might be able to shed some light on. First, here's the error:
> InternalCompilerException: Already seen an implementing JSO subtype (DocumentImpl) for interface (Node) while examining newly-added type (ElementImpl). This is a bug in JSORestrictionsChecker. The structure that triggered this is the following: interface Node interface Element extends Node interface Document extends Node class NodeImpl extends JSO implements Node class ElementImpl extends NodeImpl implements Element class DocumentImpl extends NodeImpl implements Document At first glance, this would appear to anger the SingleJSO gods. However, because NodeImpl contains implementations of all Node methods, there is no actual ambiguity as to which method implementation to bind to. The "this is a bug" wording in the error also raised my eyebrows a bit :) If I'm correct about the lack of actual ambiguity here, it would seem that the restrictions checker is just being a bit too aggressive. Do either of you have any sense for how difficult it would be to fix this (and the associated code in the compiler itself that generates the method dispatch code)? I'm perfectly willing to dig into it myself, but thought you might be able to provide a bit of context. Thanks, joel. -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
