[Native] Add workaround for KT-54668

This commit is contained in:
Dmitriy Novozhilov
2022-10-25 17:13:49 +03:00
committed by Space Team
parent bc9bc26cc8
commit e73049dfb0
@@ -642,8 +642,8 @@ internal class KonanIrLinker(
override fun deserializedSymbolNotFound(idSig: IdSignature): Nothing = error("No descriptor found for $idSig") override fun deserializedSymbolNotFound(idSig: IdSignature): Nothing = error("No descriptor found for $idSig")
private val inlineFunctionReferences by lazy { private val inlineFunctionReferences by lazy {
(cachedLibraries.getLibraryCache(klib) val cache = cachedLibraries.getLibraryCache(klib)!! // ?: error("No cache for ${klib.libraryName}") // KT-54668
?: error("No cache for ${klib.libraryName}")).serializedInlineFunctionBodies.associateBy { cache.serializedInlineFunctionBodies.associateBy {
fileDeserializationStates[it.file].declarationDeserializer.symbolDeserializer.deserializeIdSignature(it.functionSignature) fileDeserializationStates[it.file].declarationDeserializer.symbolDeserializer.deserializeIdSignature(it.functionSignature)
} }
} }
@@ -740,8 +740,8 @@ internal class KonanIrLinker(
} }
private val classesFields by lazy { private val classesFields by lazy {
(cachedLibraries.getLibraryCache(klib) val cache = cachedLibraries.getLibraryCache(klib)!! // ?: error("No cache for ${klib.libraryName}") // KT-54668
?: error("No cache for ${klib.libraryName}")).serializedClassFields.associateBy { cache.serializedClassFields.associateBy {
fileDeserializationStates[it.file].declarationDeserializer.symbolDeserializer.deserializeIdSignature(it.classSignature) fileDeserializationStates[it.file].declarationDeserializer.symbolDeserializer.deserializeIdSignature(it.classSignature)
} }
} }