It's a bug in determining if a protected member inherited from a superclass is in a split package as its host class that it only checks on the package name.
The fix is simple and compare the runtime package of the lambda class (which is in the same runtime package as the host class) with that of the declaring class of the protected member being accessed. ------------- Commit messages: - Merge branch 'master' of https://github.com/openjdk/jdk into hidden-classes - Fix copyright year - 8254975: lambda proxy fails to access a protected member inherited from a split package Changes: https://git.openjdk.java.net/jdk/pull/767/files Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=767&range=00 Issue: https://bugs.openjdk.java.net/browse/JDK-8254975 Stats: 86 lines in 2 files changed: 77 ins; 1 del; 8 mod Patch: https://git.openjdk.java.net/jdk/pull/767.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/767/head:pull/767 PR: https://git.openjdk.java.net/jdk/pull/767