FIR: Support context receivers in FirPropertyTypeParametersChecker

This commit is contained in:
Denis.Zharkov
2022-03-24 13:47:00 +03:00
committed by teamcity
parent 0ba5c528d0
commit 445705369e
@@ -5,10 +5,10 @@
package org.jetbrains.kotlin.fir.analysis.checkers.declaration
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
import org.jetbrains.kotlin.diagnostics.DiagnosticReporter
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors
import org.jetbrains.kotlin.diagnostics.reportOn
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors
import org.jetbrains.kotlin.fir.declarations.FirProperty
import org.jetbrains.kotlin.fir.types.ConeKotlinType
import org.jetbrains.kotlin.fir.types.ConeTypeParameterType
@@ -29,6 +29,7 @@ object FirPropertyTypeParametersChecker : FirPropertyChecker() {
}
}
declaration.receiverTypeRef?.let { collectAllTypes(it.coneType) }
declaration.contextReceivers.forEach { collectAllTypes(it.typeRef.coneType) }
val usedNames = usedTypes.filterIsInstance<ConeTypeParameterType>().map { it.lookupTag.name }
declaration.typeParameters.filterNot { usedNames.contains(it.name) }.forEach { danglingParam ->