Don't perform unnecessary SAM conversions
#KT-41149 In Progress
This commit is contained in:
+3
@@ -30,6 +30,7 @@ object SamTypeConversions : ParameterTypeConversion {
|
||||
|
||||
if (generatingAdditionalSamCandidateIsEnabled) return true
|
||||
if (expectedParameterType.isNothing()) return true
|
||||
if (expectedParameterType.isFunctionType) return true
|
||||
|
||||
val samConversionOracle = callComponents.samConversionOracle
|
||||
if (!callComponents.languageVersionSettings.supportsFeature(LanguageFeature.SamConversionForKotlinFunctions)) {
|
||||
@@ -46,6 +47,8 @@ object SamTypeConversions : ParameterTypeConversion {
|
||||
return when (argument) {
|
||||
is SubKotlinCallArgument -> {
|
||||
val stableType = argument.receiver.stableType
|
||||
if (stableType.isFunctionType) return true
|
||||
|
||||
hasNonAnalyzedLambdaAsReturnType(argument.callResult.subResolvedAtoms, stableType)
|
||||
}
|
||||
is SimpleKotlinCallArgument -> argument.receiver.stableType.isFunctionType
|
||||
|
||||
Reference in New Issue
Block a user