8191442: Regression in LambdaFormBuffer.replaceFunctions

Reviewed-by: vlivanov
This commit is contained in:
Claes Redestad 2017-11-17 15:43:12 +01:00
parent 52693f1ca5
commit d61c1efed9

View file

@ -115,9 +115,9 @@ final class LambdaFormBuffer {
return true; return true;
} }
private static int indexOf(NamedFunction fn, NamedFunction[] fns) { private static int indexOf(NamedFunction fn, List<NamedFunction> fns) {
for (int i = 0; i < fns.length; i++) { for (int i = 0; i < fns.size(); i++) {
if (fns[i] == fn) return i; if (fns.get(i) == fn) return i;
} }
return -1; return -1;
} }
@ -333,7 +333,7 @@ final class LambdaFormBuffer {
if (oldFns.isEmpty()) return this; if (oldFns.isEmpty()) return this;
for (int i = arity; i < length; i++) { for (int i = arity; i < length; i++) {
Name n = names[i]; Name n = names[i];
int nfi = oldFns.indexOf(n.function); int nfi = indexOf(n.function, oldFns);
if (nfi >= 0 && Arrays.equals(n.arguments, forArguments)) { if (nfi >= 0 && Arrays.equals(n.arguments, forArguments)) {
changeName(i, new Name(newFns.get(nfi), n.arguments)); changeName(i, new Name(newFns.get(nfi), n.arguments));
} }