From 7b4c0fb83aad3e19809535c5a3cc41c415001cf0 Mon Sep 17 00:00:00 2001 From: Denis Zharkov Date: Tue, 3 Nov 2015 14:02:30 +0300 Subject: [PATCH] Use original type parameters for SAM adapter to constructor It makes SAM descriptors more consistent with real ones --- .../kotlin/load/java/sam/SingleAbstractMethodUtils.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/sam/SingleAbstractMethodUtils.java b/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/sam/SingleAbstractMethodUtils.java index 42213fae11d..6b805e2496f 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/sam/SingleAbstractMethodUtils.java +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/load/java/sam/SingleAbstractMethodUtils.java @@ -289,6 +289,10 @@ public class SingleAbstractMethodUtils { @NotNull List originalParameters, @Nullable DeclarationDescriptor newOwner ) { + if (newOwner instanceof SamAdapterConstructorDescriptor) { + return new TypeParameters(originalParameters, TypeSubstitutor.EMPTY); + } + Map traitToFunTypeParameters = JavaResolverUtils.recreateTypeParametersAndReturnMapping(originalParameters, newOwner); TypeSubstitutor typeParametersSubstitutor = JavaResolverUtils.createSubstitutorForTypeParameters(traitToFunTypeParameters);