The introduction of Lookup.UNCONDITIONAL means that access checking in the VM is no longer 100% aligned with the access checking in java.lang.invoke. This arises because the VM doesn't have the lookup mode and so can't distinguish a caller/accessor that is java.lang.Object from an access check creating a method handle with publicLookup().
This issue is created to re-examine this area, maybe to see if the access checking should be unified or else provide the lookup mode to the VM so that it can be used by the LinkResolver.