// LANGUAGE: +MultiPlatformProjects object O { fun foo() {} } // Interface interface Interface { // Questionable cuz compiler reports warning here in FE 1.0 open val gav: Int get() = 42 // Redundant abstract fun foo() // error private final fun bar() open fun loo() open fun goo() {} abstract fun tar() // error abstract fun too() {} } interface B { abstract var bar: Unit abstract fun foo() } interface Foo expect abstract class AbstractClass : Foo { abstract override fun foo() abstract fun bar() abstract val baz: Int } // Abstract abstract class Base { // Redundant final final fun foo() {} // Abstract abstract fun bar() // Open open val gav = 42 } class FinalDerived : Base() { // Redundant final override final fun bar() {} // Non-final member in final class override open val gav = 13 } // Open open class OpenDerived : Base() { // Final override final fun bar() {} // Redundant open override open val gav = 13 private final fun fan() {} } // Redundant final final class Final // Derived interface interface Derived : Interface { // Redundant override open fun foo() {} // error final class Nested } // Derived abstract class abstract class AbstractDerived1(override final val gav: Int) : Interface { // Redundant override open fun foo() {} } // Derived abstract class abstract class AbstractDerived2 : Interface { // Final override final fun foo() {} // Redundant override open val gav = 13 } // Redundant abstract interface abstract interface AbstractInterface // Redundant final object final object FinalObject // Open interface open interface OpenInterface class FinalDerived2(override final val gav: Int) : Base() { override fun bar() {} }