// !DIAGNOSTICS: -UNUSED_VARIABLE -UNUSED_PARAMETER // MODULE: m1 // FILE: a.kt package p public interface A public interface C public interface D public class B : A, C, D public class M1 { public val b: B = B() } // MODULE: m2 // FILE: b.kt package p public interface A public interface C public interface D public fun a(a: A) { } public fun c(c: C) { } public fun d(d: D) { } // MODULE: m3(m1, m2) // FILE: b.kt import p.* fun test() { a(M1().b) // Type arguments do not match c(M1().b) // Type arguments do not match d(M1().b) // Type arguments do match }