Merge "Don't warn on missing desugared java8 methods"
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/InterfaceMethodRewriter.java b/src/main/java/com/android/tools/r8/ir/desugar/InterfaceMethodRewriter.java
index 4e91c62..a9a571f 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/InterfaceMethodRewriter.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/InterfaceMethodRewriter.java
@@ -151,6 +151,10 @@
           InvokeStatic invokeStatic = instruction.asInvokeStatic();
           DexMethod method = invokeStatic.getInvokedMethod();
           DexClass clazz = findDefinitionFor(method.holder);
+          if (Java8MethodRewriter.hasJava8MethodRewritePrefix(method.holder)) {
+            // We did not create this code yet, but it will not require rewriting.
+            continue;
+          }
           if (clazz == null) {
             // NOTE: leave unchanged those calls to undefined targets. This may lead to runtime
             // exception but we can not report it as error since it can also be the intended
diff --git a/src/test/java/com/android/tools/r8/desugar/Java8MethodsTest.java b/src/test/java/com/android/tools/r8/desugar/Java8MethodsTest.java
index 053ac5c..4d5ade8 100644
--- a/src/test/java/com/android/tools/r8/desugar/Java8MethodsTest.java
+++ b/src/test/java/com/android/tools/r8/desugar/Java8MethodsTest.java
@@ -4,7 +4,6 @@
 
 package com.android.tools.r8.desugar;
 
-import com.android.tools.r8.D8TestCompileResult;
 import com.android.tools.r8.TestBase;
 import com.android.tools.r8.utils.AndroidApiLevel;
 import java.nio.file.Path;
@@ -34,29 +33,27 @@
     String jvmOutput = testForJvm()
         .addTestClasspath()
         .run(MergeRun.class).getStdOut();
-
     // See b/123242448
     Path zip1 = temp.newFile("first.zip").toPath();
     Path zip2 = temp.newFile("second.zip").toPath();
-    Path zip3 = temp.newFile("third.zip").toPath();
 
-    D8TestCompileResult result1 =
-        testForD8()
-            .setMinApi(AndroidApiLevel.L)
-            .addProgramClasses(MergeRun.class, MergeInputB.class)
-            .compile()
-            .writeToZip(zip1);
-    D8TestCompileResult result2 =
-        testForD8()
-            .setMinApi(AndroidApiLevel.L)
-            .addProgramClasses(MergeInputA.class)
-            .compile()
-            .writeToZip(zip2);
-
+    testForD8()
+        .setMinApi(AndroidApiLevel.L)
+        .addProgramClasses(MergeRun.class, MergeInputB.class)
+        .compile()
+        .assertNoMessages()
+        .writeToZip(zip1);
+    testForD8()
+        .setMinApi(AndroidApiLevel.L)
+        .addProgramClasses(MergeInputA.class)
+        .compile()
+        .assertNoMessages()
+        .writeToZip(zip2);
     testForD8()
         .addProgramFiles(zip1, zip2)
         .setMinApi(AndroidApiLevel.L)
         .compile()
+        .assertNoMessages()
         .run(MergeRun.class)
         .assertSuccessWithOutput(jvmOutput);
   }