Regression in reflectively finding default methods

Description

introduced a new reflective walk for matching accessible methods but the logic in that walk assumes it will find a method in the superclass hierarchy. If it does not, then it will produce an infinite loop.

This is an example of a concrete class (sun.nio.fs.UnixPath) which has a method startsWith which is declared as a default method on java.nio.file.Path:

Proposed: Instead, should walk all super classes, then walk all interfaces to find an accessible default method.

Patch: clj-2414-2.patch

Environment

Java 9+

Attachments

2

Activity

Completed

Details

Assignee

Reporter

Approval

Patch

Priority

Affects versions

Fix versions

Created October 7, 2018 at 4:04 PM
Updated October 9, 2018 at 9:41 PM
Resolved October 9, 2018 at 9:41 PM