Kotlin: Fix field lookup in Android synthetic classes

This commit is contained in:
Tamas Vajk
2022-09-28 15:23:34 +02:00
parent d3c3f3bed9
commit 375698f975

View File

@@ -366,9 +366,8 @@ open class KotlinUsesExtractor(
if (replacementClass === parentClass)
return f
return globalExtensionState.syntheticToRealFieldMap.getOrPut(f) {
val result = replacementClass.declarations.findSubType<IrField> { replacementDecl ->
replacementDecl.name == f.name
}
val result = replacementClass.declarations.findSubType<IrField> { replacementDecl -> replacementDecl.name == f.name }
?: replacementClass.declarations.findSubType<IrProperty> { it.backingField?.name == f.name}?.backingField
if (result == null) {
logger.warn("Failed to replace synthetic class field ${f.name}")
} else {