FILE: lambdaWithReceiver.kt public abstract interface A : R|kotlin/Any| { public abstract fun foo(): R|kotlin/Unit| } public final fun myWith(receiver: R|T|, block: R|T.() -> kotlin/Unit|): R|kotlin/Unit| { R|/block|.R|SubstitutionOverride|(R|/receiver|) } public final fun R|T|.myApply(block: R|T.() -> kotlin/Unit|): R|kotlin/Unit| { R|/block|.R|SubstitutionOverride|(this@R|/myApply|) } public final fun withA(block: R|A.() -> kotlin/Unit|): R|kotlin/Unit| { } public final fun test_1(): R|kotlin/Unit| { R|/withA|( = withA@fun R|A|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|/A.foo|() } ) } public final fun test_2(a: R|A|): R|kotlin/Unit| { R|/myWith|(R|/a|, = myWith@fun R|A|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|/A.foo|() } ) } public final fun test_3(a: R|A|): R|kotlin/Unit| { R|/a|.R|/myApply|( = myApply@fun R|A|.(): R|kotlin/Unit| { this@R|special/anonymous|.R|/A.foo|() } ) } public final fun complexLambda(block: R|kotlin/Int.(kotlin/String) -> kotlin/Unit|): R|kotlin/Unit| { } public final fun test_4(): R|kotlin/Unit| { R|/complexLambda|( = complexLambda@fun R|kotlin/Int|.(it: R|kotlin/String|): R|kotlin/Unit| { this@R|special/anonymous|.R|kotlin/Int.inc|() this@R|special/anonymous|.R|kotlin/Int.inc|() R|/it|.R|kotlin/String.length| } ) }