please forget what I wrote... I made a mistake Am 08.05.2013 11:59, schrieb Jochen Theodorou: > Am 07.05.2013 17:42, schrieb MacGregor, Duncan (GE Energy Management): >> Which version of the jvm are you seeing this problem on, and are you >> adapting the method handle every time as well as exact invoking it? > > the version is a 1.8.0-ea. Since this is a generic way of method > invocation I have to adapt it a tiny bit (the arguments come in an Object[]) > >> We avoided invoke and invokeExact calls from Java (because they were >> sometimes painful to get correct in the case of varargs methods) by having >> the fallbacks return the adapted method handle to an exact invoker, like >> this >> >> MethodHandle invoker = MethodHandles.exactInvoker(type()); >> setTarget(MethodHandles.foldArguments(invoker, fallback)); > > my handles originate from reflection. I don't get them new every time, > still I have to adapt the handle for actual invocation... like this: > >> MethodHandle mh = call.target.asSpreader(Object[].class, >> call.args.length); >> mh = MethodHandles.insertArguments(mh, 0, call.receiver); >> mh = mh.asType(VC); > > mh is then used for the invocation using invokeExact > > bye blackdrag >
-- Jochen "blackdrag" Theodorou - Groovy Project Tech Lead blog: http://blackdragsview.blogspot.com/ german groovy discussion newsgroup: de.comp.lang.misc For Groovy programming sources visit http://groovy-lang.org _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev