diff --git a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/Psi2IrTranslator.kt b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/Psi2IrTranslator.kt index d1c9d47faf5..ca1b188eff4 100644 --- a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/Psi2IrTranslator.kt +++ b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/Psi2IrTranslator.kt @@ -73,9 +73,11 @@ class Psi2IrTranslator( val moduleGenerator = ModuleGenerator(context) val irModule = moduleGenerator.generateModuleFragmentWithoutDependencies(ktFiles) - moduleGenerator.generateUnboundSymbolsAsDependencies(irProviders) irModule.patchDeclarationParents() postprocess(context, irModule) + // do not generate unbound symbols before postprocessing, + // since plugins must work with non-lazy IR + moduleGenerator.generateUnboundSymbolsAsDependencies(irProviders) irModule.computeUniqIdForDeclarations(context.symbolTable) moduleGenerator.generateUnboundSymbolsAsDependencies(irProviders)