Refine multi-file facades generation

Do not generate delegation from multi-file facade to inline-only functions
because they are effectively private in bytecode

 #KT-10858 Fixed
This commit is contained in:
Denis Zharkov
2016-02-03 18:40:52 +03:00
parent e4583fd275
commit 889b136a68
6 changed files with 38 additions and 3 deletions
@@ -0,0 +1,10 @@
@file:[JvmName("Foo") JvmMultifileClass]
package test
fun foo() {
inlineOnly<String>()
}
// No method should be generated in multifile facade for 'inlineOnly'
// Because 'inlineOnly' is private in file part (because it's inline-only) and can't be delegated from facade
public inline fun <reified T> inlineOnly() {}
@@ -0,0 +1,12 @@
@kotlin.Metadata
@kotlin.jvm.internal.KotlinMultifileClass
public final class test/Foo {
public final static method foo(): void
}
@kotlin.Metadata
@kotlin.jvm.internal.KotlinMultifileClassPart
synthetic final class test/Foo__InlineOnlyMultifileKt {
public final static method foo(): void
private final static method inlineOnly(): void
}