Bug 1781130, Wrong static method called
"Tom Moore" <[email protected]> Tue, 25 Sep 2007 16:45:45 -0400
| Newsgroups | gmane.comp.java.beanshell.devel |
|---|---|
| Message-ID | <[email protected]> |
------=_Part_634_18634634.1190753145502 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline It looks like the problem is that the algorithm that find the most specific match only looks at the arguments to the method call, and ignores sorting on the most specific class. It compares each candidate method call, and take the most recently 'best matched' call. The list was being prepared from the base class to the super class, so super class entries were compared later and were preferred. A simple fix is to reverse the order of the list with super class methods first, and base class methods later. Here is a patch that does that. ------=_Part_634_18634634.1190753145502 Content-Type: application/octet-stream; name="reflect.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="reflect.patch" X-Attachment-Id: file0 KioqIEJlYW5TaGVsbC0yLjBiNVxzcmNcYnNoXFJlZmxlY3QuamF2YQlUdWUgU2VwIDI1IDE2OjI0 OjM0IDIwMDcKLS0tIENvcHkgb2YgQmVhblNoZWxsLTIuMGI1XHNyY1xic2hcUmVmbGVjdC5qYXZh CUZyaSBKdW4gMTAgMjA6MjA6NTIgMjAwNQoqKioqKioqKioqKioqKioKKioqIDUzNCw1NDUgKioq KgogIAkJaWYgKCBjYW5kaWRhdGVzID09IG51bGwgKQogIAkJCWNhbmRpZGF0ZXMgPSBuZXcgVmVj dG9yKCk7CiAgCi0gCQkvLyBEbyB3ZSBoYXZlIGEgc3VwZXJjbGFzcz8gKGludGVyZmFjZXMgZG9u J3QsIGV0Yy4pCi0gCQlDbGFzcyBzdXBlcmNsYXNzID0gYmFzZUNsYXNzLmdldFN1cGVyY2xhc3Mo KTsKLSAJCWlmICggc3VwZXJjbGFzcyAhPSBudWxsICkKLSAJCQlnYXRoZXJNZXRob2RzUmVjdXJz aXZlKCBzdXBlcmNsYXNzLAotIAkJCQltZXRob2ROYW1lLCBudW1BcmdzLCBwdWJsaWNPbmx5LCBj YW5kaWRhdGVzICk7Ci0gCiAgCQkvLyBBZGQgbWV0aG9kcyBvZiB0aGUgY3VycmVudCBjbGFzcyB0 byB0aGUgdmVjdG9yLgogIAkJLy8gSW4gcHVibGljIGNhc2UgYmUgY2FyZWZ1bCB0byBvbmx5IGFk ZCBtZXRob2RzIGZyb20gYSBwdWJsaWMgY2xhc3MKICAJCS8vIGFuZCB0byB1c2UgZ2V0TWV0aG9k cygpIGluc3RlYWQgb2YgZ2V0RGVjbGFyZWRNZXRob2RzKCkKLS0tIDUzNCw1MzkgLS0tLQoqKioq KioqKioqKioqKioKKioqIDU1OCw1NjMgKioqKgotLS0gNTUyLDU2MyAtLS0tCiAgCQkJZ2F0aGVy TWV0aG9kc1JlY3Vyc2l2ZSggIGludGZzW2ldLAogIAkJCQltZXRob2ROYW1lLCBudW1BcmdzLCBw dWJsaWNPbmx5LCBjYW5kaWRhdGVzICk7CiAgCisgCQkvLyBEbyB3ZSBoYXZlIGEgc3VwZXJjbGFz cz8gKGludGVyZmFjZXMgZG9uJ3QsIGV0Yy4pCisgCQlDbGFzcyBzdXBlcmNsYXNzID0gYmFzZUNs YXNzLmdldFN1cGVyY2xhc3MoKTsKKyAJCWlmICggc3VwZXJjbGFzcyAhPSBudWxsICkKKyAJCQln YXRoZXJNZXRob2RzUmVjdXJzaXZlKCBzdXBlcmNsYXNzLAorIAkJCQltZXRob2ROYW1lLCBudW1B cmdzLCBwdWJsaWNPbmx5LCBjYW5kaWRhdGVzICk7CisgCiAgCQlyZXR1cm4gY2FuZGlkYXRlczsK ICAJfQogIAo= ------=_Part_634_18634634.1190753145502 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ ------=_Part_634_18634634.1190753145502 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Beanshell-developers mailing list Beanshell-developers-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/beanshell-developers ------=_Part_634_18634634.1190753145502--