From 249dc1e1d2dd9e3e64698e0a2aa272739a93ba09 Mon Sep 17 00:00:00 2001 From: Stanislav Erokhin Date: Mon, 20 Dec 2021 14:41:22 +0100 Subject: [PATCH] Fix potential AbstractMethodError on KotlinJvmBinaryClass.getContainingLibrary() Compiler supposed to generate such method inside the LocalFileKotlinClass class, but because of the KT-18489 method getContainingLibrary is not generated. Because of that we potentially could get AbstractMethodError. In order to fix that we are adding explicit ovverride in java super class --- .../jetbrains/kotlin/load/kotlin/FileBasedKotlinClass.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/compiler/frontend.common.jvm/src/org/jetbrains/kotlin/load/kotlin/FileBasedKotlinClass.java b/compiler/frontend.common.jvm/src/org/jetbrains/kotlin/load/kotlin/FileBasedKotlinClass.java index a998f0e9e9c..b6fdb45d03f 100644 --- a/compiler/frontend.common.jvm/src/org/jetbrains/kotlin/load/kotlin/FileBasedKotlinClass.java +++ b/compiler/frontend.common.jvm/src/org/jetbrains/kotlin/load/kotlin/FileBasedKotlinClass.java @@ -355,4 +355,11 @@ public abstract class FileBasedKotlinClass implements KotlinJvmBinaryClass { @Override public abstract String toString(); + + // Declared explicitly to workaround KT-18489 + @Nullable + @Override + public String getContainingLibrary() { + return KotlinJvmBinaryClass.DefaultImpls.getContainingLibrary(this); + } }