--- a/jdk/src/share/classes/java/lang/invoke/MethodHandles.java Sat Jul 16 15:44:33 2011 -0700
+++ b/jdk/src/share/classes/java/lang/invoke/MethodHandles.java Sat Jul 16 15:47:53 2011 -0700
@@ -1995,16 +1995,8 @@
// lambda( arg...) { target(arg...) } )
MethodType newType = targetType.changeReturnType(filterType.returnType());
MethodHandle result = null;
- if (AdapterMethodHandle.canCollectArguments(filterType, targetType, 0, false)) {
- result = AdapterMethodHandle.makeCollectArguments(filter, target, 0, false);
- if (result != null) return result;
- }
- // FIXME: Too many nodes here.
- assert(MethodHandleNatives.workaroundWithoutRicochetFrames()); // this class is deprecated
- MethodHandle returner = dropArguments(filter, filterValues, targetType.parameterList());
- result = foldArguments(returner, target);
- assert(result.type().equals(newType));
- return result;
+ assert(AdapterMethodHandle.canCollectArguments(filterType, targetType, 0, false));
+ return AdapterMethodHandle.makeCollectArguments(filter, target, 0, false);
}
/**