On Fri, 3 Sep 2021 12:01:12 GMT, Vladimir Ivanov <vliva...@openjdk.org> wrote:

> > For the change of MethodHandle::asType to a final method, this needs a CSR.
> 
> It is not allowed to extend/subclass `MethodHandle` outside 
> `java.lang.invoke` package.
> So, the aforementioned change doesn't have any compatibility risks. Do I miss 
> something important?
> 
> ```
>     /**
>      * Package-private constructor for the method handle implementation 
> hierarchy.
>      * Method handle inheritance will be contained completely within
>      * the {@code java.lang.invoke} package.
>      */
>     // @param type type (permanently assigned) of the new method handle
>     /*non-public*/
>     MethodHandle(MethodType type, LambdaForm form) {
> ```

Sorry for the late reply as I was on vacation and just return today.

Thanks for the clarification.  I missed the fact that `MethodHandle` has no 
public constructor and cannot be extended.  This is fine.

-------------

PR: https://git.openjdk.java.net/jdk/pull/5246

Reply via email to