Skip to content

Commit e7e183f

Browse files
author
Oleksandr Karpovich
committed
CMP-7571: merge two findDeclaration calls into one
1 parent 0c8b50d commit e7e183f

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/linkage/partial/PartiallyLinkedIrTreePatcher.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -533,6 +533,7 @@ internal class PartiallyLinkedIrTreePatcher(
533533

534534
val stabilityField = owner
535535

536+
// We use stageController to make sure valid unique signatures are generated for k/js and k/wasm
536537
val stabilityGetter = builtIns.irFactory.stageController.restrictTo(parentField) {
537538
builtIns.irFactory.buildFun {
538539
startOffset = UNDEFINED_OFFSET
@@ -565,9 +566,10 @@ internal class PartiallyLinkedIrTreePatcher(
565566
val getterFunName = owner.name.asString().removeSuffix(COMPOSE_STABLE_FIELD_MARKER) + COMPOSE_STABILITY_GETTER_MARKER
566567
val artificialGetterFunName = $$"$$getterFunName$artificial"
567568
return (owner.parent as? IrDeclarationContainer)?.let { parent ->
568-
parent.findDeclaration<IrSimpleFunction> { it.name.asString() == getterFunName }
569-
?: parent.findDeclaration<IrSimpleFunction> { it.name.asString() == artificialGetterFunName } // try to find already-crafted artificial getter
570-
?: generateArtificialStabilityGetter(artificialGetterFunName, parent, owner) // generate one if none found
569+
parent.findDeclaration<IrSimpleFunction> {
570+
it.name.asString() == getterFunName ||
571+
it.name.asString() == artificialGetterFunName // try to find already-crafted artificial getter
572+
} ?: generateArtificialStabilityGetter(artificialGetterFunName, parent, owner) // generate one if none found
571573
}
572574

573575
}

0 commit comments

Comments
 (0)