From 716c3668d677e5e4a19e0ad5e3bba9793cd4d54e Mon Sep 17 00:00:00 2001 From: Roman Artemev Date: Tue, 18 Aug 2020 11:47:47 +0300 Subject: [PATCH] [IR] Properly resolve type parameters in case of property accessor - fix KT-41006 --- .../kotlin/psi2ir/generators/StandaloneDeclarationGenerator.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/StandaloneDeclarationGenerator.kt b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/StandaloneDeclarationGenerator.kt index 339c38b81fb..2b976f637c1 100644 --- a/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/StandaloneDeclarationGenerator.kt +++ b/compiler/ir/ir.psi2ir/src/org/jetbrains/kotlin/psi2ir/generators/StandaloneDeclarationGenerator.kt @@ -21,6 +21,7 @@ import org.jetbrains.kotlin.psi2ir.endOffsetOrUndefined import org.jetbrains.kotlin.psi2ir.startOffsetOrUndefined import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils import org.jetbrains.kotlin.resolve.descriptorUtil.isEffectivelyExternal +import org.jetbrains.kotlin.resolve.descriptorUtil.propertyIfAccessor import org.jetbrains.kotlin.types.KotlinType class StandaloneDeclarationGenerator(private val context: GeneratorContext) { @@ -195,7 +196,7 @@ class StandaloneDeclarationGenerator(private val context: GeneratorContext) { symbolTable.withScope(descriptor) { generateOverridenSymbols(irFunction, descriptor.overriddenDescriptors) - generateScopedTypeParameterDeclarations(irFunction, descriptor.typeParameters) + generateScopedTypeParameterDeclarations(irFunction, descriptor.propertyIfAccessor.typeParameters) generateValueParameterDeclarations(irFunction, descriptor, defaultArgumentFactory) irFunction.returnType = descriptor.returnType?.toIrType() ?: error("Expected return type $descriptor") }