Merge "False positive warnings for MissingJvmStatic are fixed."
diff --git a/src/main/java/com/android/tools/metalava/KotlinInteropChecks.kt b/src/main/java/com/android/tools/metalava/KotlinInteropChecks.kt
index 188edd9..d88ed2a 100644
--- a/src/main/java/com/android/tools/metalava/KotlinInteropChecks.kt
+++ b/src/main/java/com/android/tools/metalava/KotlinInteropChecks.kt
@@ -235,6 +235,11 @@
             // in Java you still don't have the option of adding @JvmOverloads
             return
         }
+        if (method.containingClass().isInterface()) {
+            // '@JvmOverloads' annotation cannot be used on interface methods
+            // (https://github.com/JetBrains/kotlin/blob/dc7b1fbff946d1476cc9652710df85f65664baee/compiler/frontend.java/src/org/jetbrains/kotlin/resolve/jvm/diagnostics/DefaultErrorMessagesJvm.java#L50)
+            return
+        }
         val parameters = method.parameters()
         if (parameters.size <= 1) {
             // No need for overloads when there is at most one version...
diff --git a/src/test/java/com/android/tools/metalava/KotlinInteropChecksTest.kt b/src/test/java/com/android/tools/metalava/KotlinInteropChecksTest.kt
index 2c9a5af..49a472c 100644
--- a/src/test/java/com/android/tools/metalava/KotlinInteropChecksTest.kt
+++ b/src/test/java/com/android/tools/metalava/KotlinInteropChecksTest.kt
@@ -141,13 +141,17 @@
         check(
             extraArguments = arrayOf(ARG_CHECK_KOTLIN_INTEROP),
             warnings = """
-                src/test/pkg/Foo.kt:8: warning: A Kotlin method with default parameter values should be annotated with @JvmOverloads for better Java interoperability; see https://android.github.io/kotlin-guides/interop.html#function-overloads-for-defaults [MissingJvmstatic]
+                src/test/pkg/Bar.kt:12: warning: A Kotlin method with default parameter values should be annotated with @JvmOverloads for better Java interoperability; see https://android.github.io/kotlin-guides/interop.html#function-overloads-for-defaults [MissingJvmstatic]
                 """,
             sourceFiles = arrayOf(
                 kotlin(
                     """
                     package test.pkg
 
+                    interface Bar {
+                        fun ok(int: Int = 0, int2: Int = 0) { }
+                    }
+                    
                     class Foo {
                         fun ok1() { }
                         fun ok2(int: Int) { }