// !DIAGNOSTICS:-UNUSED_VARIABLE,-CAST_NEVER_SUCCEEDS import kotlin.reflect.KProperty const val topLevel: Int = 0 const val topLevelInferred = 1 const var topLeveLVar: Int = 2 private val privateTopLevel = 3 object A { const val inObject: Int = 4 } class B(const val constructor: Int = 5) abstract class C { open const val x: Int = 6 abstract const val y: Int = 7 companion object { const val inCompaionObject = 8 } } object D : C() { override const val x: Int = 9 const val inObject = 10 final const val final = 11 const val withoutInitializer: Int init { withoutInitializer = 12 } } const val delegated: Int by Delegate() const val withGetter: Int get() = 13 const val withExplicitDefaultGetter: Int = 1 get fun foo(): Int { const val local: Int = 14 return 15 } enum class MyEnum { A { const val inEnumEntry = 16 }; const val inEnum = 17 } class Outer { inner class Inner { object C { const val a = 18 } } } const val defaultGetter = 19 get const val nonConstInitializer1 = foo() const val nonConstInitializer2 = 1 as String const val nonConstInitializer3 = 1.0 as String const val nonConstInitializer4 = 1 as Double const val nonConstInitializer5 = "2" as Int // ------------------ class Delegate { operator fun getValue(thisRef: Any?, prop: KProperty<*>): Int = 1 operator fun setValue(thisRef: Any?, prop: KProperty<*>, value: Int) = Unit }