Fix generation of companion object inside inline classes

This commit is contained in:
Mikhail Zarechenskiy
2018-02-06 14:33:14 +03:00
parent e1d3b21201
commit 70cd1cfcdf
5 changed files with 47 additions and 15 deletions
@@ -0,0 +1,11 @@
// !LANGUAGE: +InlineClasses
inline class Foo(val x: Int) {
companion object {
fun funInCompanion() {}
private const val constValInCompanion = 1
}
fun inInlineClass() {}
}
@@ -0,0 +1,26 @@
@kotlin.Metadata
public final class Foo$Companion {
inner class Foo$Companion
private method <init>(): void
public synthetic method <init>(p0: kotlin.jvm.internal.DefaultConstructorMarker): void
public final method funInCompanion(): void
}
@kotlin.Metadata
public final static class Foo$Erased {
public final static @org.jetbrains.annotations.NotNull method box(p0: int): Foo
public final static method inInlineClass(p0: int): void
}
@kotlin.Metadata
public final class Foo {
public final static field Companion: Foo$Companion
private final static field constValInCompanion: int
private final field x: int
inner class Foo$Companion
static method <clinit>(): void
public method <init>(p0: int): void
public final method getX(): int
public final method inInlineClass(): void
public final method unbox(): int
}