Files
kotlin-fork/compiler/testData/diagnostics/tests/multimodule/friendModule.fir.kt
T
Brian Norman c1f6fe1e76 [FIR] Do not include transitive friend dependencies in symbol provider
When flattening a dependency FirSymbolProvider, make sure transitive
dependency FirSymbolProviders are not included. This requires checking
that nested symbol provider sessions match the composite symbol provider
session when they are both source sessions.

^KT-60614 Fixed
2023-11-22 19:43:24 +00:00

54 lines
830 B
Kotlin
Vendored

// !DIAGNOSTICS: -UNUSED_VARIABLE
// MODULE: m1
// FILE: a.kt
package p
public class A {
internal val a = A()
internal var v = A()
internal fun a() = A()
internal inner class B
}
internal val a = A()
internal var v = A()
internal fun a() = A()
internal class B
// MODULE: m2()(m1)
// FILE: b.kt
import p.*
fun test() {
val _a = a
val _v = v
a()
B()
val inst = A()
val ia = inst.a
val iv = inst.v
inst.a()
inst.B()
}
// MODULE: m3()(m2)
// FILE: c.kt
import <!UNRESOLVED_IMPORT!>p<!>.*
fun test3() {
val _a = <!UNRESOLVED_REFERENCE!>a<!>
val _v = <!UNRESOLVED_REFERENCE!>v<!>
<!UNRESOLVED_REFERENCE!>a<!>()
<!UNRESOLVED_REFERENCE!>B<!>()
val inst = <!UNRESOLVED_REFERENCE!>A<!>()
val ia = inst.a
val iv = inst.v
inst.a()
inst.B()
}