Remove method reference from test 988
It was causing the test to fail if we tried to build it with javac-dx
toolchain. Rewrite it to use a normal anonymous inner class.
Test: ./test/run-test --build-with-javac-dx --host 988-method-trace
Change-Id: I1ac3b6a3db79cc9c09ee2f7e9558c278fc7fc88f
diff --git a/test/988-method-trace/expected.txt b/test/988-method-trace/expected.txt
index 8c67d66..d3d9249 100644
--- a/test/988-method-trace/expected.txt
+++ b/test/988-method-trace/expected.txt
@@ -142,10 +142,10 @@
......=> private static native java.lang.Object java.lang.Throwable.nativeFillInStackTrace()
......<= private static native java.lang.Object java.lang.Throwable.nativeFillInStackTrace() -> <class [Ljava.lang.Object;: <non-deterministic>>
.....<= public synchronized java.lang.Throwable java.lang.Throwable.fillInStackTrace() -> <class java.lang.Error: java.lang.Error: Bad argument: -19 < 0
- at art.Test988.iter_fibonacci(Test988.java:203)
- at art.Test988$IterOp.applyAsInt(Test988.java:198)
- at art.Test988.doFibTest(Test988.java:291)
- at art.Test988.run(Test988.java:261)
+ at art.Test988.iter_fibonacci(Test988.java:207)
+ at art.Test988$IterOp.applyAsInt(Test988.java:202)
+ at art.Test988.doFibTest(Test988.java:295)
+ at art.Test988.run(Test988.java:265)
at Main.main(Main.java:19)
>
....<= public java.lang.Throwable(java.lang.String) -> <null: null>
@@ -162,10 +162,10 @@
...<= private void java.util.ArrayList.ensureExplicitCapacity(int) -> <null: null>
..<= private void java.util.ArrayList.ensureCapacityInternal(int) -> <null: null>
fibonacci(-19) -> java.lang.Error: Bad argument: -19 < 0
- at art.Test988.iter_fibonacci(Test988.java:203)
- at art.Test988$IterOp.applyAsInt(Test988.java:198)
- at art.Test988.doFibTest(Test988.java:291)
- at art.Test988.run(Test988.java:261)
+ at art.Test988.iter_fibonacci(Test988.java:207)
+ at art.Test988$IterOp.applyAsInt(Test988.java:202)
+ at art.Test988.doFibTest(Test988.java:295)
+ at art.Test988.run(Test988.java:265)
at Main.main(Main.java:19)
.<= public boolean java.util.ArrayList.add(java.lang.Object) -> <class java.lang.Boolean: true>
@@ -243,10 +243,10 @@
......=> private static native java.lang.Object java.lang.Throwable.nativeFillInStackTrace()
......<= private static native java.lang.Object java.lang.Throwable.nativeFillInStackTrace() -> <class [Ljava.lang.Object;: <non-deterministic>>
.....<= public synchronized java.lang.Throwable java.lang.Throwable.fillInStackTrace() -> <class java.lang.Error: java.lang.Error: Bad argument: -19 < 0
- at art.Test988.fibonacci(Test988.java:225)
- at art.Test988$RecurOp.applyAsInt(Test988.java:220)
- at art.Test988.doFibTest(Test988.java:291)
- at art.Test988.run(Test988.java:262)
+ at art.Test988.fibonacci(Test988.java:229)
+ at art.Test988$RecurOp.applyAsInt(Test988.java:224)
+ at art.Test988.doFibTest(Test988.java:295)
+ at art.Test988.run(Test988.java:266)
at Main.main(Main.java:19)
>
....<= public java.lang.Throwable(java.lang.String) -> <null: null>
@@ -263,10 +263,10 @@
...<= private void java.util.ArrayList.ensureExplicitCapacity(int) -> <null: null>
..<= private void java.util.ArrayList.ensureCapacityInternal(int) -> <null: null>
fibonacci(-19) -> java.lang.Error: Bad argument: -19 < 0
- at art.Test988.fibonacci(Test988.java:225)
- at art.Test988$RecurOp.applyAsInt(Test988.java:220)
- at art.Test988.doFibTest(Test988.java:291)
- at art.Test988.run(Test988.java:262)
+ at art.Test988.fibonacci(Test988.java:229)
+ at art.Test988$RecurOp.applyAsInt(Test988.java:224)
+ at art.Test988.doFibTest(Test988.java:295)
+ at art.Test988.run(Test988.java:266)
at Main.main(Main.java:19)
.<= public boolean java.util.ArrayList.add(java.lang.Object) -> <class java.lang.Boolean: true>
diff --git a/test/988-method-trace/src/art/Test988.java b/test/988-method-trace/src/art/Test988.java
index 6ac7b11..37ff136 100644
--- a/test/988-method-trace/src/art/Test988.java
+++ b/test/988-method-trace/src/art/Test988.java
@@ -89,7 +89,11 @@
Class<?> klass = val.getClass();
if ((new Object[0]).getClass().isAssignableFrom(klass)) {
return Arrays.toString(
- Arrays.stream((Object[])val).map(Test988::genericToString).toArray());
+ Arrays.stream((Object[])val).map(new Function<Object, String>() {
+ public String apply(Object o) {
+ return Test988.genericToString(o);
+ }
+ }).toArray());
} else if ((new byte[0]).getClass().isAssignableFrom(klass)) {
return Arrays.toString((byte[])val);
} else if ((new char[0]).getClass().isAssignableFrom(klass)) {