diff --git a/src/main/java/com/android/tools/r8/ir/optimize/MemberPoolCollection.java b/src/main/java/com/android/tools/r8/ir/optimize/MemberPoolCollection.java
index 3b1284d..8b74c30 100644
--- a/src/main/java/com/android/tools/r8/ir/optimize/MemberPoolCollection.java
+++ b/src/main/java/com/android/tools/r8/ir/optimize/MemberPoolCollection.java
@@ -222,7 +222,9 @@
     }
 
     private boolean hasSeenBelow(Wrapper<T> member, boolean inclusive) {
-      if (inclusive && hasSeenDirectly(member)) {
+      if (inclusive
+          && (hasSeenDirectly(member)
+              || interfaces.stream().anyMatch(itf -> itf.hasSeenAbove(member, true)))) {
         return true;
       }
       return subTypes.stream().anyMatch(subType -> subType.hasSeenBelow(member, true));
diff --git a/src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsInMethodThatImplementsInterfaceMethodOnSubTest.java b/src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsInMethodThatImplementsInterfaceMethodOnSubTest.java
index 25c2a61..9001472 100644
--- a/src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsInMethodThatImplementsInterfaceMethodOnSubTest.java
+++ b/src/test/java/com/android/tools/r8/ir/optimize/unusedarguments/UnusedArgumentsInMethodThatImplementsInterfaceMethodOnSubTest.java
@@ -4,8 +4,6 @@
 
 package com.android.tools.r8.ir.optimize.unusedarguments;
 
-import static org.hamcrest.core.StringContains.containsString;
-
 import com.android.tools.r8.NeverMerge;
 import com.android.tools.r8.TestBase;
 import com.android.tools.r8.TestParameters;
@@ -37,8 +35,7 @@
         .enableMergeAnnotations()
         .setMinApi(parameters.getApiLevel())
         .run(parameters.getRuntime(), TestClass.class)
-        // TODO(b/143934502): Should succeed with "Hello from A", "Hello from C".
-        .assertFailureWithErrorThatMatches(containsString("AbstractMethodError"));
+        .assertSuccessWithOutputLines("Hello from A", "Hello from C");
   }
 
   static class TestClass {
