[LazyIR] Exclude INVISIBLE_FAKE callable members from class declarations
Fixes KT-55509
This commit is contained in:
committed by
Space Team
parent
4c925d0588
commit
4428971401
@@ -6,6 +6,7 @@
|
||||
package org.jetbrains.kotlin.ir.declarations.lazy
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities.isPrivate
|
||||
import org.jetbrains.kotlin.ir.ObsoleteDescriptorBasedAPI
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrConstructorCall
|
||||
@@ -73,10 +74,10 @@ class IrLazyClass(
|
||||
}
|
||||
|
||||
private fun shouldBuildStub(descriptor: DeclarationDescriptor): Boolean =
|
||||
descriptor !is DeclarationDescriptorWithVisibility ||
|
||||
!DescriptorVisibilities.isPrivate(descriptor.visibility) ||
|
||||
descriptor !is DeclarationDescriptorWithVisibility
|
||||
|| (!isPrivate(descriptor.visibility) && descriptor.visibility != DescriptorVisibilities.INVISIBLE_FAKE)
|
||||
// This exception is needed for K/N caches usage.
|
||||
isObject && descriptor is ClassConstructorDescriptor
|
||||
|| isObject && descriptor is ClassConstructorDescriptor
|
||||
|
||||
override var typeParameters: List<IrTypeParameter> by lazyVar(stubGenerator.lock) {
|
||||
descriptor.declaredTypeParameters.mapTo(arrayListOf()) {
|
||||
|
||||
Reference in New Issue
Block a user