1.1 --- a/test/tools/javac/meth/InvokeMH.java Thu Jun 17 16:28:21 2010 -0700 1.2 +++ b/test/tools/javac/meth/InvokeMH.java Fri Jun 18 15:12:04 2010 -0700 1.3 @@ -48,28 +48,56 @@ 1.4 void test(MethodHandle mh_SiO, 1.5 MethodHandle mh_vS, 1.6 MethodHandle mh_vi, 1.7 - MethodHandle mh_vv) { 1.8 + MethodHandle mh_vv) throws Throwable { 1.9 Object o; String s; int i; // for return type testing 1.10 1.11 // next five must have sig = (String,int)Object 1.12 - mh_SiO.invoke("world", 123); 1.13 - mh_SiO.invoke("mundus", 456); 1.14 + mh_SiO.invokeExact("world", 123); 1.15 + mh_SiO.invokeExact("mundus", 456); 1.16 Object k = "kosmos"; 1.17 - mh_SiO.invoke((String)k, 789); 1.18 - o = mh_SiO.invoke((String)null, 000); 1.19 - o = mh_SiO.<Object>invoke("arda", -123); 1.20 + mh_SiO.invokeExact((String)k, 789); 1.21 + o = mh_SiO.invokeExact((String)null, 000); 1.22 + o = mh_SiO.<Object>invokeExact("arda", -123); 1.23 1.24 // sig = ()String 1.25 - s = mh_vS.<String>invoke(); 1.26 + s = mh_vS.<String>invokeExact(); 1.27 1.28 // sig = ()int 1.29 - i = mh_vi.<int>invoke(); 1.30 - o = mh_vi.<int>invoke(); 1.31 - //s = mh_vi.<int>invoke(); //BAD 1.32 - mh_vi.<int>invoke(); 1.33 + i = mh_vi.<int>invokeExact(); 1.34 + o = mh_vi.<int>invokeExact(); 1.35 + //s = mh_vi.<int>invokeExact(); //BAD 1.36 + mh_vi.<int>invokeExact(); 1.37 1.38 // sig = ()void 1.39 - //o = mh_vv.<void>invoke(); //BAD 1.40 - mh_vv.<void>invoke(); 1.41 + //o = mh_vv.<void>invokeExact(); //BAD 1.42 + mh_vv.<void>invokeExact(); 1.43 + } 1.44 + 1.45 + void testGen(MethodHandle mh_SiO, 1.46 + MethodHandle mh_vS, 1.47 + MethodHandle mh_vi, 1.48 + MethodHandle mh_vv) throws Throwable { 1.49 + Object o; String s; int i; // for return type testing 1.50 + 1.51 + // next five must have sig = (*,*)* 1.52 + mh_SiO.invokeGeneric((Object)"world", (Object)123); 1.53 + mh_SiO.<void>invokeGeneric((Object)"mundus", (Object)456); 1.54 + Object k = "kosmos"; 1.55 + mh_SiO.invokeGeneric(k, 789); 1.56 + o = mh_SiO.invokeGeneric(null, 000); 1.57 + o = mh_SiO.<Object>invokeGeneric("arda", -123); 1.58 + 1.59 + // sig = ()String 1.60 + o = mh_vS.invokeGeneric(); 1.61 + 1.62 + // sig = ()int 1.63 + i = mh_vi.<int>invokeGeneric(); 1.64 + o = mh_vi.invokeGeneric(); 1.65 + //s = mh_vi.<int>invokeGeneric(); //BAD 1.66 + mh_vi.<void>invokeGeneric(); 1.67 + 1.68 + // sig = ()void 1.69 + //o = mh_vv.<void>invokeGeneric(); //BAD 1.70 + o = mh_vv.invokeGeneric(); 1.71 } 1.72 }