[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
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
// FIR_IDENTICAL
|
||||
// !DIAGNOSTICS: -UNUSED_VARIABLE
|
||||
// MODULE: m1
|
||||
// FILE: a.kt
|
||||
@@ -35,3 +34,20 @@ fun test() {
|
||||
inst.B()
|
||||
}
|
||||
|
||||
// MODULE: m3()(m2)
|
||||
// FILE: c.kt
|
||||
|
||||
import <!UNRESOLVED_REFERENCE!>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 = <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>inst<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>a<!>
|
||||
val iv = <!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>inst<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>v<!>
|
||||
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>inst<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>a<!>()
|
||||
<!DEBUG_INFO_ELEMENT_WITH_ERROR_TYPE!>inst<!>.<!DEBUG_INFO_MISSING_UNRESOLVED!>B<!>()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user