Psi2ir: fix function type check for fun interface conversion
Parameter of a synthetic SAM adapter always has a function type (not a subtype). Checking for the subtypes broke the case from KT-46908, where fun interface is itself a subtype of a function type. #KT-46908 Fixed
This commit is contained in:
+2
-2
@@ -17,7 +17,7 @@
|
||||
package org.jetbrains.kotlin.psi2ir.generators
|
||||
|
||||
import org.jetbrains.kotlin.builtins.isBuiltinFunctionalType
|
||||
import org.jetbrains.kotlin.builtins.isFunctionTypeOrSubtype
|
||||
import org.jetbrains.kotlin.builtins.isFunctionType
|
||||
import org.jetbrains.kotlin.config.LanguageFeature
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.impl.SyntheticFieldDescriptor
|
||||
@@ -585,7 +585,7 @@ fun StatementGenerator.generateSamConversionForValueArgumentsIfRequired(call: Ca
|
||||
if (!samConversion.isSamType(underlyingValueParameter.type) &&
|
||||
!samConversion.isSamType(underlyingValueParameter.original.type)
|
||||
) continue
|
||||
if (!originalValueParameters[i].type.isFunctionTypeOrSubtype) continue
|
||||
if (!originalValueParameters[i].type.isFunctionType) continue
|
||||
}
|
||||
|
||||
val samKotlinType = getSamTypeForValueParameter(underlyingValueParameter)
|
||||
|
||||
Reference in New Issue
Block a user