On Fri, 30 Apr 2021 17:20:21 GMT, Mandy Chung <mch...@openjdk.org> wrote:
>>> I think the implementation does not support that. I will also need to look >>> into how this impacts JDK-8266010. As I suggest earlier, I'm fine to do >>> this as a follow up after integration. >> >> I've added `@CS` in the interface methods too. I've also added a stronger >> test which creates method handles in one module (which doesn't have native >> access) and then calls them from another module (which does NOT have native >> access enabled), and make sure that all call fails as expected (e.g. that >> caller context is that of the lookup module). >> >> Surprisingly, CheckCSMs does NOT fail if both interface and implementation >> methods are `@CS` annotated - but if only interface is annotated, the test >> fails. This seems odd - since I can't find any logic in the test which check >> for overriding. Is the test accidentally passing? > >> I've added `@CS` in the interface methods too. I've also added a stronger >> test which creates method handles in one module (which doesn't have native >> access) and then calls them from another module (which does NOT have native >> access enabled), and make sure that all call fails as expected (e.g. that >> caller context is that of the lookup module). > > Thanks. > >> Surprisingly, CheckCSMs does NOT fail if both interface and implementation >> methods are `@CS` annotated - but if only interface is annotated, the test >> fails. This seems odd - since I can't find any logic in the test which check >> for overriding. Is the test accidentally passing? > > I create JDK-8266383 and I will look into that. Thanks for the review @mlchung - hopefully looks better now! ------------- PR: https://git.openjdk.java.net/jdk/pull/3699