KTIJ-25341 [Analysis API] Visit component calls in import optimizer

N.B. K2 does not require resolved `componentX` functions for the
placeholder variables (`_`), see KT-59504

^KTIJ-25341 Fixed
This commit is contained in:
Roman Golyshev
2023-06-19 17:18:42 +02:00
committed by teamcity
parent db2475f41e
commit bccd7bc04a
7 changed files with 67 additions and 0 deletions
@@ -0,0 +1,2 @@
dependency.component2
dependency.component3
@@ -0,0 +1,19 @@
// FILE: main.kt
package test
import dependency.component1
import dependency.component2
import dependency.component3
fun usage(target: dependency.Target) {
val (c1, _) = target
}
// FILE: dependency.kt
package dependency
class Target
operator fun Target.component1(): Int = 1
operator fun Target.component2(): Int = 2
operator fun Target.component3(): Int = 2
@@ -0,0 +1,17 @@
// FILE: main.kt
package test
import dependency.component1
import dependency.component2
fun usage(target: dependency.Target) {
val (c1, с2) = target
}
// FILE: dependency.kt
package dependency
class Target
operator fun Target.component1(): Int = 1
operator fun Target.component2(): Int = 2