40 |
40 |
41 public class TestCP { |
41 public class TestCP { |
42 |
42 |
43 static class TestClass { |
43 static class TestClass { |
44 void test(MethodHandle mh) throws Throwable { |
44 void test(MethodHandle mh) throws Throwable { |
45 Number n = mh.<Number>invokeExact("daddy",1,'n'); |
45 Number n = (Number)mh.invokeExact("daddy",1,'n'); |
46 n = (Number)mh.invokeExact("bunny",1,'d'); |
46 n = (Number)mh.invokeExact("bunny",1,'d'); |
|
47 n = (Number)(mh.invokeExact("foo",1,'d')); |
|
48 n = (Number)((mh.invokeExact("bar",1,'d'))); |
47 } |
49 } |
48 } |
50 } |
49 |
51 |
50 static final String PS_TYPE = "(Ljava/lang/String;IC)Ljava/lang/Number;"; |
52 static final String PS_TYPE = "(Ljava/lang/String;IC)Ljava/lang/Number;"; |
51 static final int PS_CALLS_COUNT = 2; |
53 static final int PS_CALLS_COUNT = 4; |
52 static final String SUBTEST_NAME = TestClass.class.getName() + ".class"; |
54 static final String SUBTEST_NAME = TestClass.class.getName() + ".class"; |
53 static final String TEST_METHOD_NAME = "test"; |
55 static final String TEST_METHOD_NAME = "test"; |
54 |
56 |
55 public static void main(String... args) throws Exception { |
57 public static void main(String... args) throws Exception { |
56 new TestCP().run(); |
58 new TestCP().run(); |