// ISSUE: KT-53639 // IGNORE_LIGHT_ANALYSIS // IGNORE_BACKEND_K1: ANY // REASON: red code (see corresponding diagnostic test) fun box(): String { val buildee = initializeAndBuild( { build { setTypeVariable(TargetType()) } }, { placeholderExtensionInvokeOnBuildee() }, ) consumeTargetTypeBuildee(buildee) return "OK" } class TargetType fun consumeTargetTypeBuildee(value: Buildee) {} class Buildee { fun setTypeVariable(value: TV) { storage = value } private var storage: TV = TargetType() as TV } fun Buildee.placeholderExtensionInvokeOnBuildee() {} fun build(instructions: Buildee.() -> Unit): Buildee { return Buildee().apply(instructions) } fun initializeAndBuild( initializer: () -> Buildee, instructions: Buildee.() -> Unit ): Buildee { return initializer().apply(instructions) }