diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt index 03e2a6785f8..70ceada5b60 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/enhancement/SignatureEnhancement.kt @@ -37,7 +37,12 @@ class FirSignatureEnhancement( private val session: FirSession, private val overridden: FirSimpleFunction.() -> List> ) { - private val moduleData = session.moduleData + /* + * FirSignatureEnhancement may be created with library session which doesn't have single module data, + * so owner is a only place where module data can be obtained. However it's guaranteed that `owner` + * was created for same session as one passed to constructor, so it's safe to use owners module data + */ + private val moduleData = owner.moduleData private val javaTypeParameterStack: JavaTypeParameterStack = if (owner is FirJavaClass) owner.javaTypeParameterStack else JavaTypeParameterStack.EMPTY