diff --git a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt index 0bbec1f5a90..a400d74f3e2 100644 --- a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt +++ b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/FunctionGenerator.kt @@ -87,6 +87,14 @@ internal class FunctionGenerator(declarationGenerator: DeclarationGenerator) : D generateBody: BodyGenerator.() -> IrBody? ): IrSimpleFunction = declareSimpleFunctionInner(descriptor, ktFunction, origin).buildWithScope { irFunction -> + if (descriptor != irFunction.descriptor) { + val message = """ + |IrSymbolTable contains function with wrong descriptor. + |Expected: $descriptor + |Actual: ${irFunction.descriptor} + """.trimMargin() + error(message) + } generateFunctionParameterDeclarationsAndReturnType(irFunction, ktFunction, ktReceiver, ktContextReceivers) irFunction.body = createBodyGenerator(irFunction.symbol, parentLoopResolver).generateBody() }