[FIR] Implement deprecation warning for synthetic without java base getter

Also implement new resolution behavior under language feature

^KT-63076 Fixed
^KT-64358
This commit is contained in:
Dmitriy Novozhilov
2023-12-15 17:08:53 +02:00
committed by Space Team
parent d5b0a5b220
commit fa33c5dc79
23 changed files with 384 additions and 35 deletions
@@ -11,6 +11,7 @@ import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.model.DiagnosticL
import org.jetbrains.kotlin.fir.checkers.generator.diagnostics.model.PositioningStrategy
import org.jetbrains.kotlin.fir.expressions.FirExpression
import org.jetbrains.kotlin.fir.symbols.impl.FirCallableSymbol
import org.jetbrains.kotlin.fir.symbols.impl.FirNamedFunctionSymbol
import org.jetbrains.kotlin.fir.types.ConeKotlinType
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
@@ -192,5 +193,9 @@ object JVM_DIAGNOSTICS_LIST : DiagnosticList("FirJvmErrors") {
)
val JAVA_SAM_INTERFACE_CONSTRUCTOR_REFERENCE by error<PsiElement>()
val NO_REFLECTION_IN_CLASS_PATH by warning<PsiElement>()
val SYNTHETIC_PROPERTY_WITHOUT_JAVA_ORIGIN by warning<PsiElement>(PositioningStrategy.REFERENCED_NAME_BY_QUALIFIED) {
parameter<FirNamedFunctionSymbol>("originalSymbol")
parameter<Name>("functionName")
}
}
}