--- old/src/java.base/share/classes/java/lang/invoke/MethodHandles.java 2019-07-25 13:11:05.000000000 -0700 +++ new/src/java.base/share/classes/java/lang/invoke/MethodHandles.java 2019-07-25 13:11:05.000000000 -0700 @@ -2497,7 +2497,7 @@ * @throws NullPointerException if any argument is null */ public MethodHandle unreflectSpecial(Method m, Class specialCaller) throws IllegalAccessException { - checkSpecialCaller(specialCaller, null); + checkSpecialCaller(specialCaller, m.getDeclaringClass()); Lookup specialLookup = this.in(specialCaller); MemberName method = new MemberName(m, true); assert(method.isMethod());