[FIR] Filter out incorrect library provides for dependencyProviders

Get rid of providers duplication
This commit is contained in:
Ivan Kochurkin
2022-10-21 22:17:52 +02:00
committed by Space Team
parent 8883de3f00
commit 194d1cfccf
12 changed files with 202 additions and 6 deletions
@@ -0,0 +1,15 @@
// FIR_IDENTICAL
// TARGET_BACKEND: JVM
// WITH_STDLIB
// MODULE: lib
// MODULE: main()()(lib)
fun nullIfEmpty(list: List<String>): List<String>? {
return if (list.isNotEmpty()) {
list
} else {
null
}
}
@@ -0,0 +1,8 @@
// -- Module: <lib> --
package
// -- Module: <main> --
package
public fun nullIfEmpty(/*0*/ list: kotlin.collections.List<kotlin.String>): kotlin.collections.List<kotlin.String>?
@@ -0,0 +1,18 @@
// FIR_IDENTICAL
// !LANGUAGE: +MultiPlatformProjects
// TARGET_BACKEND: JVM
// WITH_STDLIB
// MODULE: lib
// MODULE: lib2
// MODULE: main(lib2)()(lib)
fun nullIfEmpty(list: List<String>): List<String>? {
return if (list.isNotEmpty()) {
list
} else {
null
}
}
@@ -0,0 +1,12 @@
// -- Module: <lib> --
package
// -- Module: <lib2> --
package
// -- Module: <main> --
package
public fun nullIfEmpty(/*0*/ list: kotlin.collections.List<kotlin.String>): kotlin.collections.List<kotlin.String>?
@@ -0,0 +1,19 @@
// FIR_IDENTICAL
// FIR_IDE_IGNORE
// !LANGUAGE: +MultiPlatformProjects
// TARGET_BACKEND: JVM
// MODULE: common
// TARGET_PLATFORM: Common
expect fun g0(): String
// MODULE: intermediate1()()(common)
// TARGET_PLATFORM: Common
// MODULE: intermediate2()()(common)
// TARGET_PLATFORM: Common
// MODULE: main()()(intermediate1, intermediate2)
// TARGET_PLATFORM: JVM
actual fun g0(): String = "OK"
@@ -0,0 +1,19 @@
// -- Module: <common> --
package
public expect fun g0(): kotlin.String
// -- Module: <intermediate1> --
package
public expect fun g0(): kotlin.String
// -- Module: <intermediate2> --
package
public expect fun g0(): kotlin.String
// -- Module: <main> --
package
public actual fun g0(): kotlin.String