diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalFunctionsLowering.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalFunctionsLowering.kt index 119792e4ed5..b799b63ae57 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalFunctionsLowering.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/lower/LocalFunctionsLowering.kt @@ -214,7 +214,7 @@ class LocalFunctionsLowering(val context: BackendContext): DeclarationContainerL return if (oldCallee.typeParameters.isEmpty()) null - else oldCallee.typeParameters.associateBy( + else oldCallee.original.typeParameters.associateBy( { newCallee.typeParameters[it.index] }, { oldExpression.getTypeArgument(it)!! } ) diff --git a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt index 5f5bfbc80f4..7dbb729db8e 100644 --- a/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt +++ b/compiler/ir/backend.jvm/src/org/jetbrains/kotlin/backend/jvm/codegen/ClassCodegen.kt @@ -136,6 +136,7 @@ class ClassCodegen private constructor(val irClass: IrClass, val context: JvmBac } fun generateMethod(method: IrFunction) { + if (method.descriptor.kind == CallableMemberDescriptor.Kind.FAKE_OVERRIDE) return FunctionCodegen(method, this).generate() }