[FIR2IR] Replace getOrCreateIrScript with createIrScript
Fir2IrDeclarationStorage should not sometimes create IR declarations during lookup requests
This commit is contained in:
committed by
Space Team
parent
7263edf322
commit
55f62834cb
@@ -509,7 +509,7 @@ class Fir2IrConverter(
|
||||
}
|
||||
is FirScript -> {
|
||||
require(parent is IrFile)
|
||||
val irScript = declarationStorage.getOrCreateIrScript(declaration)
|
||||
val irScript = declarationStorage.createIrScript(declaration)
|
||||
addDeclarationToParentIfNeeded(irScript)
|
||||
declarationStorage.withScope(irScript.symbol) {
|
||||
irScript.parent = parent
|
||||
|
||||
+2
-2
@@ -1158,8 +1158,8 @@ class Fir2IrDeclarationStorage(
|
||||
return scriptCache[script]
|
||||
}
|
||||
|
||||
fun getOrCreateIrScript(script: FirScript): IrScript {
|
||||
getCachedIrScript(script)?.let { return it }
|
||||
fun createIrScript(script: FirScript): IrScript {
|
||||
getCachedIrScript(script)?.let { error("IrScript already created: ${script.render()}") }
|
||||
val symbol = createScriptSymbol(signatureComposer.composeSignature(script))
|
||||
return callablesGenerator.createIrScript(script, symbol).also {
|
||||
scriptCache[script] = it
|
||||
|
||||
Reference in New Issue
Block a user