[FIR] ReturnTypeCalculatorWithJump: support WrappedIntegerOperator explicitly
^KTIJ-25761
This commit is contained in:
committed by
Space Team
parent
d7c197b31e
commit
ea9244bf48
+9
@@ -25,6 +25,7 @@ import org.jetbrains.kotlin.fir.resolve.transformers.contracts.runContractResolv
|
||||
import org.jetbrains.kotlin.fir.scopes.FakeOverrideTypeCalculator
|
||||
import org.jetbrains.kotlin.fir.scopes.fakeOverrideSubstitution
|
||||
import org.jetbrains.kotlin.fir.delegatedWrapperData
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.originalForWrappedIntegerOperator
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirCallableSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirSyntheticPropertySymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.lazyResolveToPhase
|
||||
@@ -202,6 +203,14 @@ open class ReturnTypeCalculatorWithJump(
|
||||
)
|
||||
}
|
||||
|
||||
if (declaration is FirSimpleFunction) {
|
||||
// Effectively this logic is redundant now, because all methods of Int have an explicit return type,
|
||||
// so explicit call here just to be sure (probably some method from Int will have an implicit type)
|
||||
declaration.originalForWrappedIntegerOperator?.let {
|
||||
tryCalculateReturnTypeOrNull(it.fir)
|
||||
}
|
||||
}
|
||||
|
||||
resolvedToContractsIfNecessary(declaration)
|
||||
|
||||
val returnTypeRef = declaration.returnTypeRef
|
||||
|
||||
Reference in New Issue
Block a user