Remi, thank you a lot for such a quick reply! I tried to do what you suggested, but it keeps failing.
Note, that I don't use some customized build, but instead, as also mentionen in previous mail, JDK7 b116. Could you please try the code by yourself? It's a single class. Thanks again! = = = = = = = = = = CODE = = = = = = = = = = import java.dyn.*; public final class _InvokeDynamic { private final static MethodHandle methodHandle; public static int methodA() { System.out.println("!...@#! MAGIC !...@#!"); return 0; } static { Linkage.registerBootstrapMethod("bootstrap"); methodHandle = MethodHandles.lookup().findStatic(_InvokeDynamic.class, "methodA", MethodType.methodType(int.class)); } private static CallSite bootstrap(Class<?> declaring, String name, MethodType type) { System.out.println("declaring class: " + declaring + ", name: " + name + ", method type:" + type); CallSite cs = new CallSite(); cs.setTarget(methodHandle); return cs; } public static void main(String[] ars) throws Throwable { try { System.out.println("\n\nATTEMPT 1"); InvokeDynamic.<int>anything(); } catch (Throwable t) { t.printStackTrace(System.out); } try { System.out.println("\n\nATTEMPT 2"); methodHandle.invokeExact(); // warning: unchecked generic array creation } catch (Throwable t) { t.printStackTrace(System.out); } try { System.out.println("\n\nATTEMPT 3"); (int) methodHandle.invokeExact(); // error: not a statement } catch (Throwable t) { t.printStackTrace(System.out); } } } = = = = = = = = = = OUTPUT = = = = = = = = = = ATTEMPT 1 declaring class: class _InvokeDynamic, name: anything, method type:()int !...@#! MAGIC !...@#! ATTEMPT 2 java.dyn.WrongMethodTypeException: ()I cannot be called as ([Ljava/lang/Object;)Ljava/lang/Object; at _InvokeDynamic.main(_InvokeDynamic.java:40) ATTEMPT 3 java.lang.RuntimeException: Uncompilable source code - not a statement at _InvokeDynamic.main(_InvokeDynamic.java:47) BUILD SUCCESSFUL (total time: 0 seconds) _______________________________________________ mlvm-dev mailing list mlvm-dev@openjdk.java.net http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev