FILE: notUselessCast_1.kt public open class Base : R|kotlin/Any| { public constructor(): R|Base| { super() } } public final class Derived : R|Base| { public constructor(): R|Derived| { super() } } public final fun test_0(d: R|Derived|): R|kotlin/Unit| { local final fun take(d: R|Derived|): R|kotlin/Unit| { } R|/take|((R|/d| as R|Derived|)) } public final fun test_1(): R|kotlin/Unit| { lval list: R|kotlin/collections/MutableList| = R|kotlin/collections/listOf|().R|kotlin/collections/map|( = map@fun (it: R|kotlin/Any|): R|Base| { ^ (R|/Derived.Derived|() as R|Base|) } ).R|kotlin/collections/toMutableList|() R|/list|.R|SubstitutionOverride|(R|/Base.Base|()) } public final fun test_2(): R|kotlin/Unit| { lval list: R|kotlin/collections/MutableList| = R|kotlin/collections/listOf|().R|kotlin/collections/map|( = map@fun (it: R|kotlin/Any|): R|Derived| { ^ R|/Derived.Derived|() } ).R|kotlin/collections/toMutableList|() R|/list|.R|SubstitutionOverride#|(R|/Base.Base|()) }