diff options
| author | 2016-10-31 12:58:45 +0000 | |
|---|---|---|
| committer | 2016-10-31 14:01:27 +0000 | |
| commit | b24b0268b0f26af9d66ab0f163690d2b2164902b (patch) | |
| tree | bebedd91488c1334114035c9be9b2b072c014407 | |
| parent | 6fcc5e8e0fb4298c83286ae5a5bcd0d06180f356 (diff) | |
MethodHandles: Temporarily rewrite test of exact invokes.
Go through an additional layer of indirection to fool the overly
smart type inference.
The issue needs to be investigated on the Jack side, as per
the associated bug.
Test: make test-art-host
Bug: 32536744
Change-Id: Ic02bf155822e76332eaa7a300ba9c0da8e751e26
| -rw-r--r-- | test/957-methodhandle-transforms/src/Main.java | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/test/957-methodhandle-transforms/src/Main.java b/test/957-methodhandle-transforms/src/Main.java index aaf6e2f5c8..e9d313b874 100644 --- a/test/957-methodhandle-transforms/src/Main.java +++ b/test/957-methodhandle-transforms/src/Main.java @@ -99,8 +99,16 @@ public class Main { DelegatingTransformer delegate = new DelegatingTransformer(specialFunctionHandle); // Test an exact invoke. + // + // Note that the shorter form below doesn't work and must be + // investigated on the jack side : b/32536744 + // + // delegate.invokeExact(false, 'h', (short) 56, 72, Integer.MAX_VALUE + 42l, + // 0.56f, 100.0d, "hello", (Object) "goodbye"); + + Object obj = "goodbye"; delegate.invokeExact(false, 'h', (short) 56, 72, Integer.MAX_VALUE + 42l, - 0.56f, 100.0d, "hello", "goodbye"); + 0.56f, 100.0d, "hello", obj); // Test a non exact invoke with one int -> long conversion and a float -> double // conversion. |