Skip to content

NPE during compilation #179

@gotwalt

Description

@gotwalt

Doing some experimental work with ktor, trying to compile a jar with coroutines using gradle. Kotlin 1.2, coroutines 0.20. We observe that the artifact will build and execute inside IntelliJ 2017.3, but compiling using gradle build causes a codegen exception.

Caused by: org.jetbrains.kotlin.codegen.CompilationException: Back-end (JVM) Internal error: Couldn't transform method node: doResume (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object;:
  @Lorg/jetbrains/annotations/Nullable;() // invisible
    @Lorg/jetbrains/annotations/Nullable;() // invisible, parameter 0
    @Lorg/jetbrains/annotations/Nullable;() // invisible, parameter 1
    TRYCATCHBLOCK L0 L1 L2 null
    TRYCATCHBLOCK L3 L4 L2 null
    TRYCATCHBLOCK L2 L5 L2 null
    TRYCATCHBLOCK L6 L7 L8 java/lang/Throwable
    TRYCATCHBLOCK L9 L10 L8 java/lang/Throwable
    TRYCATCHBLOCK L11 L12 L8 java/lang/Throwable
    TRYCATCHBLOCK L13 L1 L8 java/lang/Throwable
    TRYCATCHBLOCK L3 L14 L8 java/lang/Throwable
    TRYCATCHBLOCK L6 L7 L15 null
    TRYCATCHBLOCK L9 L10 L15 null
    TRYCATCHBLOCK L11 L12 L15 null
    TRYCATCHBLOCK L13 L1 L15 null
    TRYCATCHBLOCK L3 L14 L15 null
    TRYCATCHBLOCK L8 L16 L15 null
    TRYCATCHBLOCK L15 L17 L15 null
    INVOKESTATIC kotlin/coroutines/experimental/intrinsics/IntrinsicsKt.getCOROUTINE_SUSPENDED ()Ljava/lang/Object;
    ASTORE 22
    ALOAD 0
    GETFIELD kotlin/coroutines/experimental/jvm/internal/CoroutineImpl.label : I
    TABLESWITCH
      0: L18
      1: L19
      2: L20
      3: L21
      4: L22
      5: L23
      6: L24
      default: L25

(Followed by continued bytecode dump).

Happy to provide code samples etc if there's a better way to add clarity. Our build script matches closely to the example in the readme, and we've exhausted most of our local understanding of how to troubleshoot. Any ideas?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions