Kotlin-native: Could not find serialized descriptor for index

Created on 30 Apr 2019  路  11Comments  路  Source: JetBrains/kotlin-native

After updating to 1.3.31 my builds started failing on linkTestDebugExecutableIos task. Tracked the issue down to unit tests referencing an enum class nested in another class. Check the Foo and FooTests classes in the reproducible zip attached. If you comment out the tests the project builds successfully.

> Task :greeting:linkTestDebugExecutableIos
e: Compilation failed: Could not find serialized descriptor for index: -8498428572239168977 org.greeting,Foo.Bar.SPORTS,<init>

 * Source files: CalculatorTest.kt, FooTests.kt
 * Compiler version info: Konan: 1.2.1 / Kotlin: 1.3.31
 * Output kind: PROGRAM

e: java.lang.IllegalStateException: Could not find serialized descriptor for index: -8498428572239168977 org.greeting,Foo.Bar.SPORTS,<init>
    at org.jetbrains.kotlin.backend.konan.serialization.DescriptorReferenceDeserializer.deserializeDescriptorReference(DeserializeDescriptorReference.kt:125)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeDescriptorReference(KotlinIrLinker.kt:194)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrSymbolData(KotlinIrLinker.kt:166)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrSymbol(KotlinIrLinker.kt:144)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeIrConstructor(IrModuleDeserializer.kt:955)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1120)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeIrClass(IrModuleDeserializer.kt:801)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1124)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeIrEnumEntry(IrModuleDeserializer.kt:914)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1138)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeIrClass(IrModuleDeserializer.kt:801)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1124)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeIrClass(IrModuleDeserializer.kt:801)
    at org.jetbrains.kotlin.backend.konan.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1124)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker.deserializeTopLevelDeclaration(KotlinIrLinker.kt:293)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker.deserializeAllReachableTopLevels(KotlinIrLinker.kt:325)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker.findDeserializedDeclarationForDescriptor(KotlinIrLinker.kt:355)
    at org.jetbrains.kotlin.backend.konan.serialization.KotlinIrLinker.findDeserializedDeclaration(KotlinIrLinker.kt:362)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:198)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:35)
    at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass(SymbolTable.kt:554)
    at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass$default(SymbolTable.kt:236)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.generateClassStub$ir_tree(DeclarationStubGenerator.kt:195)
    at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator$DependencyGenerationTask.run(ExternalDependenciesGenerator.kt:44)
    at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator.generateUnboundSymbolsAsDependencies(ExternalDependenciesGenerator.kt:36)
    at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies(ModuleGenerator.kt:48)
    at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:61)
    at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt:98)
    at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:58)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:56)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:91)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:18)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:90)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:73)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:15)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:14)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:14)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:14)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:14)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:14)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$then$1.invoke(PhaseBuilders.kt:14)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:91)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:18)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:90)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:73)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:33)
    at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:30)
    at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:78)
    at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:35)
    at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:84)
    at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:42)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:103)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:81)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:49)
    at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:214)
    at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:206)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:217)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:208)
    at org.jetbrains.kotlin.konan.util.UtilKt.profileIf(Util.kt:39)
    at org.jetbrains.kotlin.konan.util.UtilKt.profile(Util.kt:33)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:210)
    at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:296)
    at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:16)


> Task :greeting:linkTestDebugExecutableIos FAILED

kotlin-mpp-example-master.zip

Most helpful comment

Reproduced with 1.3.50 too:

Reproduced in travis via clean build here: https://travis-ci.org/korlibs/korau/jobs/609810082#L509

> Task :korau:linkDebugTestLinuxX64
e: Compilation failed: Could not find serialized descriptor for index: -4899686781878184055 com.soywiz.korau.format.mp3,MiniMp3,cfunc

 * Source files: AllTargetsSupportMp3.kt, AudioStreamGeneratorTest.kt, AudioToneTest.kt, AudioFormatTest.kt, DecodeTest.kt, SoftMp3DecoderTest.kt, NativeAudioStreamNativeLinuxTest.kt, NativeMp3DecoderTest.kt, NativeOggVorbisDecoderFormatTest.kt, PlaySoundNativeTest.kt
 * Compiler version info: Konan: 1.3.50 / Kotlin: 1.3.50
 * Output kind: PROGRAM

e: java.lang.IllegalStateException: Could not find serialized descriptor for index: -4899686781878184055 com.soywiz.korau.format.mp3,MiniMp3,cfunc
        at org.jetbrains.kotlin.backend.common.serialization.DescriptorReferenceDeserializer.deserializeDescriptorReference(DeserializeDescriptorReference.kt:171)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeDescriptorReference(KotlinIrLinker.kt:208)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrSymbolData(KotlinIrLinker.kt:180)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrSymbol(KotlinIrLinker.kt:158)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeSimpleType(IrModuleDeserializer.kt:102)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrTypeData(IrModuleDeserializer.kt:134)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrType(KotlinIrLinker.kt:163)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrTypeArgument(IrModuleDeserializer.kt:87)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeSimpleType(IrModuleDeserializer.kt:107)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrTypeData(IrModuleDeserializer.kt:134)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrType(KotlinIrLinker.kt:163)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer$deserializeIrFunction$$inlined$withDeserializedIrFunctionBase$lambda$2.invoke(IrModuleDeserializer.kt:955)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer$deserializeIrFunction$$inlined$withDeserializedIrFunctionBase$lambda$2.invoke(IrModuleDeserializer.kt:48)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareSimpleFunction(SymbolTable.kt:700)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrFunction(IrModuleDeserializer.kt:945)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrProperty(IrModuleDeserializer.kt:1120)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1187)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrClass(IrModuleDeserializer.kt:913)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1183)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1209)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeTopLevelDeclaration(KotlinIrLinker.kt:311)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeAllReachableTopLevels(KotlinIrLinker.kt:368)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclarationForDescriptor(KotlinIrLinker.kt:398)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclaration(KotlinIrLinker.kt:405)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:206)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:34)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass(SymbolTable.kt:553)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass$default(SymbolTable.kt:229)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.generateClassStub$ir_tree(DeclarationStubGenerator.kt:205)
        at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator.generateUnboundSymbolsAsDependencies(ExternalDependenciesGenerator.kt:43)
        at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies(ModuleGenerator.kt:60)
        at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies$default(ModuleGenerator.kt:51)
        at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:80)
        at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt:163)
        at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt)
        at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:115)
        at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:113)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
        at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:28)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:42)
        at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:27)
        at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:79)
        at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:34)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:84)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:42)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:104)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:82)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:50)
        at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:215)
        at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:207)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:223)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:220)
        at org.jetbrains.kotlin.konan.util.UtilKt.profileIf(Util.kt:26)
        at org.jetbrains.kotlin.konan.util.UtilKt.profile(Util.kt:21)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:222)
        at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:304)
        at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:16)


> Task :korau:linkDebugTestLinuxX64 FAILED

FAILURE: Build failed with an exception.

All 11 comments

Same issue, on 1.3.31, seems to also be related to a nested enum, after moving from 1.3.21 to 1.3.31. Although, on my side, it's the mingwX64 that's broken, whereas the iOS X64, Arm64 and Arm32 are building just fine.

I have a similar build failure when I add kotlinx.coroutines 1.2.1 to current version of the objc sample from this repository:

sourceSets {
    objcMain {
        dependencies {
            implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core-native:1.2.1")
        }
    }
}

It seems to be related to the "moving fast" policy regarding backwards and forward compatibility of Kotlin/Native. The sample was running on 1.3.40-dev-2451 which is not the version kotlinx.coroutines 1.2.1 has been compiled against. As soon as I made it use 1.3.31 by editing root gradle.properties file, I could compile successfully, and Coroutines rock on macOS!

Are you using a library that may have been compiled with an older version of Kotlin?

Unfortunately, same IntelliJ (2019.1.2), same Kotlin version (1.3.31), including Gradle plugin and Kotlin-serialization, for the mpp library I'm building. The issue is happening with one enum from this library when trying to compile on mingw. Not sure that it can have an impact, but kotlinx-serialization and Kotlin-coroutines are built for 1.3.30 and are declared as dependencies of the mpp library...

Reproduced with 1.3.50 too:

Reproduced in travis via clean build here: https://travis-ci.org/korlibs/korau/jobs/609810082#L509

> Task :korau:linkDebugTestLinuxX64
e: Compilation failed: Could not find serialized descriptor for index: -4899686781878184055 com.soywiz.korau.format.mp3,MiniMp3,cfunc

 * Source files: AllTargetsSupportMp3.kt, AudioStreamGeneratorTest.kt, AudioToneTest.kt, AudioFormatTest.kt, DecodeTest.kt, SoftMp3DecoderTest.kt, NativeAudioStreamNativeLinuxTest.kt, NativeMp3DecoderTest.kt, NativeOggVorbisDecoderFormatTest.kt, PlaySoundNativeTest.kt
 * Compiler version info: Konan: 1.3.50 / Kotlin: 1.3.50
 * Output kind: PROGRAM

e: java.lang.IllegalStateException: Could not find serialized descriptor for index: -4899686781878184055 com.soywiz.korau.format.mp3,MiniMp3,cfunc
        at org.jetbrains.kotlin.backend.common.serialization.DescriptorReferenceDeserializer.deserializeDescriptorReference(DeserializeDescriptorReference.kt:171)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeDescriptorReference(KotlinIrLinker.kt:208)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrSymbolData(KotlinIrLinker.kt:180)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrSymbol(KotlinIrLinker.kt:158)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeSimpleType(IrModuleDeserializer.kt:102)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrTypeData(IrModuleDeserializer.kt:134)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrType(KotlinIrLinker.kt:163)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrTypeArgument(IrModuleDeserializer.kt:87)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeSimpleType(IrModuleDeserializer.kt:107)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrTypeData(IrModuleDeserializer.kt:134)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrDeserializerForModule.deserializeIrType(KotlinIrLinker.kt:163)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer$deserializeIrFunction$$inlined$withDeserializedIrFunctionBase$lambda$2.invoke(IrModuleDeserializer.kt:955)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer$deserializeIrFunction$$inlined$withDeserializedIrFunctionBase$lambda$2.invoke(IrModuleDeserializer.kt:48)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareSimpleFunction(SymbolTable.kt:700)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrFunction(IrModuleDeserializer.kt:945)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrProperty(IrModuleDeserializer.kt:1120)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1187)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeIrClass(IrModuleDeserializer.kt:913)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1183)
        at org.jetbrains.kotlin.backend.common.serialization.IrModuleDeserializer.deserializeDeclaration(IrModuleDeserializer.kt:1209)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeTopLevelDeclaration(KotlinIrLinker.kt:311)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeAllReachableTopLevels(KotlinIrLinker.kt:368)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclarationForDescriptor(KotlinIrLinker.kt:398)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclaration(KotlinIrLinker.kt:405)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:206)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:34)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass(SymbolTable.kt:553)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass$default(SymbolTable.kt:229)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.generateClassStub$ir_tree(DeclarationStubGenerator.kt:205)
        at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator.generateUnboundSymbolsAsDependencies(ExternalDependenciesGenerator.kt:43)
        at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies(ModuleGenerator.kt:60)
        at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies$default(ModuleGenerator.kt:51)
        at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:80)
        at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt:163)
        at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt)
        at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:115)
        at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:113)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
        at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:28)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:42)
        at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:27)
        at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:79)
        at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:34)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:84)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:42)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:104)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:82)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:50)
        at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:215)
        at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:207)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:223)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:220)
        at org.jetbrains.kotlin.konan.util.UtilKt.profileIf(Util.kt:26)
        at org.jetbrains.kotlin.konan.util.UtilKt.profile(Util.kt:21)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:222)
        at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:304)
        at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:16)


> Task :korau:linkDebugTestLinuxX64 FAILED

FAILURE: Build failed with an exception.

Having the same problem on the following:

Kotlin: 1.3.61
Ktor: 1.2.6
Coroutines: 1.3.2-1.3.60

e: java.lang.IllegalStateException: Could not find serialized descriptor for index: -6614713790654178244 kotlinx.coroutines.internal,<root>,SharedImmutable
    at org.jetbrains.kotlin.backend.common.serialization.DescriptorReferenceDeserializer.deserializeDescriptorReference(DeserializeDescriptorReference.kt:178)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeDescriptorReference(KotlinIrLinker.kt:349)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrSymbolData(KotlinIrLinker.kt:326)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrSymbol(KotlinIrLinker.kt:365)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeIrTypeAlias(IrFileDeserializer.kt:1393)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1288)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1299)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeDeclaration(KotlinIrLinker.kt:171)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile$deserializeAllFileReachableTopLevel$1.invoke(KotlinIrLinker.kt:408)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile$deserializeAllFileReachableTopLevel$1.invoke(KotlinIrLinker.kt:150)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$DeserializationState$SimpleDeserializationState.processPendingDeclaration(KotlinIrLinker.kt:113)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeAllFileReachableTopLevel(KotlinIrLinker.kt:407)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$deserializeAllModuleReachableTopLevels$1.invoke(KotlinIrLinker.kt:473)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$deserializeAllModuleReachableTopLevels$1.invoke(KotlinIrLinker.kt:132)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$DeserializationState$ModuleDeserializationState.processPendingDeclaration(KotlinIrLinker.kt:90)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer.deserializeAllModuleReachableTopLevels(KotlinIrLinker.kt:471)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeAllReachableTopLevels(KotlinIrLinker.kt:526)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclarationForDescriptor(KotlinIrLinker.kt:554)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.getDeclaration(KotlinIrLinker.kt:561)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.getDeclaration(DeclarationStubGenerator.kt:64)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.access$getDeclaration(DeclarationStubGenerator.kt:35)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:214)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:35)
    at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass(SymbolTable.kt:571)
    at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass$default(SymbolTable.kt:238)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.generateClassStub$ir_tree(DeclarationStubGenerator.kt:213)
    at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator.generateUnboundSymbolsAsDependencies(ExternalDependenciesGenerator.kt:56)
    at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies(ModuleGenerator.kt:63)
    at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:82)
    at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt:175)
    at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:115)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:113)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
    at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:28)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:42)
    at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:27)
    at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:74)
    at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:34)
    at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:84)
    at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:42)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:104)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:82)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:50)
    at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:215)
    at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:207)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:225)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:222)
    at org.jetbrains.kotlin.util.UtilKt.profileIf(Util.kt:27)
    at org.jetbrains.kotlin.util.UtilKt.profile(Util.kt:21)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:224)
    at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:304)
    at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:16)

But this works when I use the ff versions:

Kotlin: 1.3.50
Ktor: 1.2.5
Coroutines: 1.3.2

``` Compilation failed: Could not find serialized descriptor for index: -9167458290357250762 com.ctech.memoir.ebisu,Ebisu,logSumExp

  • Source files:
  • Compiler version info: Konan: 1.3.60 / Kotlin: 1.3.60
  • Output kind: PROGRAM
    e: java.lang.IllegalStateException: Could not find serialized descriptor for index: -9167458290357250762
    at org.jetbrains.kotlin.backend.common.serialization.DescriptorReferenceDeserializer.deserializeDescriptorReference(DeserializeDescriptorReference.kt:178)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeDescriptorReference(KotlinIrLinker.kt:349)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrSymbolData(KotlinIrLinker.kt:326)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrSymbol(KotlinIrLinker.kt:365)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeIrFunction(IrFileDeserializer.kt:1427)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1281)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeIrClass(IrFileDeserializer.kt:991)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1280)
    at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1299)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeDeclaration(KotlinIrLinker.kt:171)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile$deserializeAllFileReachableTopLevel$1.invoke(KotlinIrLinker.kt:408)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile$deserializeAllFileReachableTopLevel$1.invoke(KotlinIrLinker.kt:150)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$DeserializationState$SimpleDeserializationState.processPendingDeclaration(KotlinIrLinker.kt:113)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeAllFileReachableTopLevel(KotlinIrLinker.kt:407)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$deserializeAllModuleReachableTopLevels$1.invoke(KotlinIrLinker.kt:473)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$deserializeAllModuleReachableTopLevels$1.invoke(KotlinIrLinker.kt:132)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$DeserializationState$ModuleDeserializationState.processPendingDeclaration(KotlinIrLinker.kt:90)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer.deserializeAllModuleReachableTopLevels(KotlinIrLinker.kt:471)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeAllReachableTopLevels(KotlinIrLinker.kt:526)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclarationForDescriptor(KotlinIrLinker.kt:554)
    at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.getDeclaration(KotlinIrLinker.kt:561)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.getDeclaration(DeclarationStubGenerator.kt:64)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.access$getDeclaration(DeclarationStubGenerator.kt:35)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:214)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:35)
    at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass(SymbolTable.kt:571)
    at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass$default(SymbolTable.kt:238)
    at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.generateClassStub$ir_tree(DeclarationStubGenerator.kt:213)
    at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator.generateUnboundSymbolsAsDependencies(ExternalDependenciesGenerator.kt:56)
    at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies(ModuleGenerator.kt:63)
    at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:82)
    at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt:175)
    at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:115)
    at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:113)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
    at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:28)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
    at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
    at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:42)
    at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:27)
    at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:74)
    at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:34)
    at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:84)
    at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:42)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:104)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:82)
    at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:50)
    at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:215)
    at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:207)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:225)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:222)
    at org.jetbrains.kotlin.util.UtilKt.profileIf(Util.kt:27)
    at org.jetbrains.kotlin.util.UtilKt.profile(Util.kt:21)
    at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:224)
    at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:304)
    at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:16)
    ```

Same here, can't even compile the libcurl sample:

> Task :cinteropLibcurlHelloworld
e: Compilation failed: Could not find serialized descriptor for index: 5478299480788824642 libcurl,<root>,CURLcode

 * Source files: libcurl.kt
 * Compiler version info: Konan: 1.3.61 / Kotlin: 1.3.60
 * Output kind: LIBRARY

e: java.lang.IllegalStateException: Could not find serialized descriptor for index: 5478299480788824642 libcurl,<root>,CURLcode
        at org.jetbrains.kotlin.backend.common.serialization.DescriptorReferenceDeserializer.deserializeDescriptorReference(DeserializeDescriptorReference.kt:178)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeDescriptorReference(KotlinIrLinker.kt:349)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrSymbolData(KotlinIrLinker.kt:326)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrSymbol(KotlinIrLinker.kt:365)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeTypeAbbreviation(IrFileDeserializer.kt:212)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeSimpleType(IrFileDeserializer.kt:203)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeIrTypeData(IrFileDeserializer.kt:233)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeIrType(KotlinIrLinker.kt:370)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer$deserializeIrFunction$$inlined$withDeserializedIrFunctionBase$lambda$2.invoke(IrFileDeserializer.kt:1055)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer$deserializeIrFunction$$inlined$withDeserializedIrFunctionBase$lambda$2.invoke(IrFileDeserializer.kt:130)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareSimpleFunction(SymbolTable.kt:746)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeIrFunction(IrFileDeserializer.kt:1045)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeIrProperty(IrFileDeserializer.kt:1221)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1282)
        at org.jetbrains.kotlin.backend.common.serialization.IrFileDeserializer.deserializeDeclaration(IrFileDeserializer.kt:1299)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeDeclaration(KotlinIrLinker.kt:171)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile$deserializeAllFileReachableTopLevel$1.invoke(KotlinIrLinker.kt:408)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile$deserializeAllFileReachableTopLevel$1.invoke(KotlinIrLinker.kt:150)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$DeserializationState$SimpleDeserializationState.processPendingDeclaration(KotlinIrLinker.kt:113)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$IrDeserializerForFile.deserializeAllFileReachableTopLevel(KotlinIrLinker.kt:407)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$deserializeAllModuleReachableTopLevels$1.invoke(KotlinIrLinker.kt:473)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer$deserializeAllModuleReachableTopLevels$1.invoke(KotlinIrLinker.kt:132)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$DeserializationState$ModuleDeserializationState.processPendingDeclaration(KotlinIrLinker.kt:90)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker$IrModuleDeserializer.deserializeAllModuleReachableTopLevels(KotlinIrLinker.kt:471)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.deserializeAllReachableTopLevels(KotlinIrLinker.kt:526)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.findDeserializedDeclarationForDescriptor(KotlinIrLinker.kt:554)
        at org.jetbrains.kotlin.backend.common.serialization.KotlinIrLinker.getDeclaration(KotlinIrLinker.kt:561)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.getDeclaration(DeclarationStubGenerator.kt:64)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.access$getDeclaration(DeclarationStubGenerator.kt:35)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:214)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator$generateClassStub$1.invoke(DeclarationStubGenerator.kt:35)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass(SymbolTable.kt:571)
        at org.jetbrains.kotlin.ir.util.SymbolTable.declareClass$default(SymbolTable.kt:238)
        at org.jetbrains.kotlin.ir.util.DeclarationStubGenerator.generateClassStub$ir_tree(DeclarationStubGenerator.kt:213)
        at org.jetbrains.kotlin.ir.util.ExternalDependenciesGenerator.generateUnboundSymbolsAsDependencies(ExternalDependenciesGenerator.kt:56)
        at org.jetbrains.kotlin.psi2ir.generators.ModuleGenerator.generateUnboundSymbolsAsDependencies(ModuleGenerator.kt:63)
        at org.jetbrains.kotlin.psi2ir.Psi2IrTranslator.generateModuleFragment(Psi2IrTranslator.kt:82)
        at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt:175)
        at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$psiToIrPhase$1.invoke(ToplevelPhases.kt)
        at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:115)
        at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:113)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
        at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:28)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper$runBody$1.invoke(CompilerPhase.kt:128)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.downlevel(CompilerPhase.kt:24)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.runBody(CompilerPhase.kt:127)
        at org.jetbrains.kotlin.backend.common.phaser.AbstractNamedPhaseWrapper.invoke(CompilerPhase.kt:105)
        at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:42)
        at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:27)
        at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:74)
        at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:34)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:84)
        at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:42)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:104)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:82)
        at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:50)
        at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:215)
        at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:207)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:225)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:222)
        at org.jetbrains.kotlin.util.UtilKt.profileIf(Util.kt:27)
        at org.jetbrains.kotlin.util.UtilKt.profile(Util.kt:21)
        at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:224)
        at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:304)
        at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:19)

I have discovered a very simple class that reproduces this error, so perhaps it will help trace it down:

open class Foo {
    companion object : Foo()

    val <T> T.foo: T get() = this
}

Simply add this class to your codebase and you will get this error when building for native (I got it building for iOS). Comment out either line inside the class and the error goes away. If you don't have the companion object extend the outer class the error also goes away. I realize this class looks pointless, but it was distilled down to the minimum thing that causes the error

I would guess some conflict between member extension properties and companion objects that implement the outer class?

@dalewking Thanks! I can confirm that this code makes the compiler crash on 1.3.72, but gets compiled ok on 1.4, so this particular issue is kinda obsolete.

Closing this issue. If you have similar problems with Kotlin 1.4, please create new issues in YouTrack: https://kotl.in/issue

Was this page helpful?
0 / 5 - 0 ratings