--- a/jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java Mon Apr 10 13:46:19 2017 -0700
+++ b/jdk/src/java.base/share/classes/java/lang/invoke/LambdaFormEditor.java Tue Apr 11 11:24:12 2017 +0200
@@ -532,7 +532,8 @@
assert(pos > 0); // cannot spread the MH arg itself
Name spreadParam = new Name(L_TYPE);
- Name checkSpread = new Name(MethodHandleImpl.NF_checkSpreadArgument, spreadParam, arrayLength);
+ Name checkSpread = new Name(MethodHandleImpl.getFunction(MethodHandleImpl.NF_checkSpreadArgument),
+ spreadParam, arrayLength);
// insert the new expressions
int exprPos = lambdaForm.arity();
@@ -932,14 +933,14 @@
// replace the null entry in the MHImpl.loop invocation with localTypes
Name invokeLoop = lambdaForm.names[pos + 1];
- assert(invokeLoop.function == NF_loop);
+ assert(invokeLoop.function.equals(MethodHandleImpl.getFunction(NF_loop)));
Object[] args = Arrays.copyOf(invokeLoop.arguments, invokeLoop.arguments.length);
assert(args[0] == null);
args[0] = localTypes;
LambdaFormBuffer buf = buffer();
buf.startEdit();
- buf.changeName(pos + 1, new Name(NF_loop, args));
+ buf.changeName(pos + 1, new Name(MethodHandleImpl.getFunction(NF_loop), args));
form = buf.endEdit();
return putInCache(key, form);