[FIR] Add utility for checking if FirReference is one of error reference

Also simplify relevant code in checkers
This commit is contained in:
Dmitriy Novozhilov
2022-12-14 18:40:28 +02:00
committed by Space Team
parent 7334694fd9
commit 34be0f05b2
11 changed files with 55 additions and 57 deletions
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.fir.expressions.FirQualifiedAccessExpression
import org.jetbrains.kotlin.fir.lightTree.LightTree2Fir
import org.jetbrains.kotlin.fir.references.FirErrorNamedReference
import org.jetbrains.kotlin.fir.references.FirResolvedErrorReference
import org.jetbrains.kotlin.fir.references.isError
import org.jetbrains.kotlin.fir.resolve.providers.firProvider
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirProviderImpl
import org.jetbrains.kotlin.fir.resolve.transformers.FirGlobalResolveProcessor
@@ -283,8 +284,8 @@ class FirResolveBench(val withProgress: Boolean, val listener: BenchListener? =
if (type is ConeErrorType) {
errorFunctionCallTypes++
val psi = callee.psi
if ((callee is FirErrorNamedReference || callee is FirResolvedErrorReference) && psi != null) {
reportProblem((callee as FirDiagnosticHolder).diagnostic.reason, psi)
if (callee.isError() && psi != null) {
reportProblem(callee.diagnostic.reason, psi)
}
}
}
@@ -300,8 +301,8 @@ class FirResolveBench(val withProgress: Boolean, val listener: BenchListener? =
if (type is ConeErrorType) {
errorQualifiedAccessTypes++
val psi = callee.psi
if ((callee is FirErrorNamedReference || callee is FirResolvedErrorReference) && psi != null) {
reportProblem((callee as FirDiagnosticHolder).diagnostic.reason, psi)
if (callee.isError() && psi != null) {
reportProblem(callee.diagnostic.reason, psi)
}
}
}