Allow open impl class for final header class

This commit is contained in:
Alexander Udalov
2016-12-13 21:05:04 +03:00
parent 546e47dc44
commit 0634782e47
4 changed files with 55 additions and 1 deletions
@@ -0,0 +1,16 @@
// !LANGUAGE: +MultiPlatformProjects
// MODULE: m1-common
// FILE: common.kt
header class Foo
header fun getFoo(): Foo
// MODULE: m2-jvm(m1-common)
// FILE: jvm.kt
impl open class Foo
class Bar : Foo()
impl fun getFoo(): Foo = Bar()
@@ -0,0 +1,31 @@
// -- Module: <m1-common> --
package
public header fun getFoo(): Foo
public final header class Foo {
public constructor Foo()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
// -- Module: <m2-jvm> --
package
public impl fun getFoo(): Foo
public final class Bar : Foo {
public constructor Bar()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
public open impl class Foo {
public constructor Foo()
public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}