Fix bug during computation of methods to implement

Bug: 62016927
Change-Id: Ia74e31a6f0c0ba6acafe0195a474f4aef9c4319e
diff --git a/src/main/java/com/android/tools/r8/ir/desugar/ClassProcessor.java b/src/main/java/com/android/tools/r8/ir/desugar/ClassProcessor.java
index ba15c9d..ecda01e 100644
--- a/src/main/java/com/android/tools/r8/ir/desugar/ClassProcessor.java
+++ b/src/main/java/com/android/tools/r8/ir/desugar/ClassProcessor.java
@@ -115,7 +115,7 @@
     // by this class as well as its superclasses.
     DexClass current = clazz;
     while (true) {
-      for (DexType type : clazz.interfaces.values) {
+      for (DexType type : current.interfaces.values) {
         helper.merge(getOrCreateInterfaceInfo(type));
       }
 
@@ -139,7 +139,7 @@
     current = clazz;
     while (true) {
       // Hide candidates by virtual method of the class.
-      hideCandidates(clazz.virtualMethods, candidates, toBeImplemented);
+      hideCandidates(current.virtualMethods, candidates, toBeImplemented);
       if (candidates.isEmpty()) {
         return toBeImplemented;
       }
diff --git a/src/test/examplesAndroidN/interfacemethods/DefaultMethods.java b/src/test/examplesAndroidN/interfacemethods/DefaultMethods.java
index 49e792c..ef49f4e 100644
--- a/src/test/examplesAndroidN/interfacemethods/DefaultMethods.java
+++ b/src/test/examplesAndroidN/interfacemethods/DefaultMethods.java
@@ -6,7 +6,24 @@
 
 public class DefaultMethods {
 
+  interface I3 {
+    default int getValue() {
+      return 1;
+    }
+
+  }
+
+  static class C3 {
+    public int getValue() {
+      return 2;
+    }
+  }
+
+  static class C4 extends C3 implements I3 {
+  }
+
   public static void main(String[] args) {
     new C2().d1();
+    System.out.println(new C4().getValue());
   }
 }