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)) {