On 06/12/2016 19:41, Remi Forax wrote:

Hi all,
when using Method.invoke, we automatically add a read edge between the current 
class and the called class when invoking a method by reflection but if one uses 
methods lookup.find*,
he had to add the read edge manually. I think we should harmonize the behavior 
and add a read edge when using java.lang.invoke API too.

Core reflection doesn't actually add read edges of course, it instead just assumes readability. This avoids needing to change code using core reflection when migrating that code to explicit modules.

The reason that java.lang.invoke checks readability is because it's aligned with bytecode. It would be a significant change if the access checks in java.lang.invoke differed to bytecode.

-Alan

Reply via email to