[LL FIR] LLFirReturnTypeCalculatorWithJump: add checkCanceled

`tryCalculateReturnTypeOrNull` is the entry point for foreign symbols
resolution. We already have `checkCanceled` inside `lazyResolveToPhase`
and `checkIsResolved`, but in this case we will cover cases where
everything around is already resolved

^KTIJ-27504
This commit is contained in:
Dmitrii Gridin
2024-03-06 17:08:57 +01:00
committed by Space Team
parent 4cbd431d22
commit edd9f0348e
@@ -10,6 +10,7 @@ import org.jetbrains.kotlin.analysis.low.level.api.fir.api.targets.asResolveTarg
import org.jetbrains.kotlin.analysis.low.level.api.fir.transformers.LLFirImplicitBodyTargetResolver
import org.jetbrains.kotlin.analysis.low.level.api.fir.transformers.LLFirImplicitTypesLazyResolver
import org.jetbrains.kotlin.analysis.low.level.api.fir.transformers.LLImplicitBodyResolveComputationSession
import org.jetbrains.kotlin.analysis.low.level.api.fir.util.checkCanceled
import org.jetbrains.kotlin.fir.declarations.*
import org.jetbrains.kotlin.fir.resolve.ScopeSession
import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.ReturnTypeCalculatorWithJump
@@ -45,4 +46,9 @@ internal class LLFirReturnTypeCalculatorWithJump(
LLFirImplicitTypesLazyResolver.checkIsResolved(declaration)
return declaration.returnTypeRef as FirResolvedTypeRef
}
override fun tryCalculateReturnTypeOrNull(declaration: FirCallableDeclaration): FirResolvedTypeRef {
checkCanceled()
return super.tryCalculateReturnTypeOrNull(declaration)
}
}