[FIR] Partial implementation of DEPRECATION(_ERROR) diagnostics

No support for inheritance deprecations
and deprecations in qualifier's parts
This commit is contained in:
Andrey Zinovyev
2021-06-23 15:25:23 +03:00
committed by teamcityserver
parent 9fad55d551
commit de3f31cf78
188 changed files with 984 additions and 1052 deletions
@@ -219,6 +219,8 @@ fun deserializeClassToSymbol(
it.sourceElement = containerSource
it.replaceDeprecation(it.getDeprecationInfos(session.languageVersionSettings.apiVersion))
classProto.getExtensionOrNull(JvmProtoBuf.classModuleName)?.let { idx ->
it.moduleName = nameResolver.getString(idx)
}
@@ -6,9 +6,7 @@
package org.jetbrains.kotlin.fir.deserialization
import org.jetbrains.kotlin.descriptors.Modality
import org.jetbrains.kotlin.fir.FirModuleData
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.containingClassAttr
import org.jetbrains.kotlin.fir.*
import org.jetbrains.kotlin.fir.declarations.*
import org.jetbrains.kotlin.fir.declarations.builder.*
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyGetter
@@ -20,7 +18,6 @@ import org.jetbrains.kotlin.fir.expressions.FirExpression
import org.jetbrains.kotlin.fir.expressions.builder.buildExpressionStub
import org.jetbrains.kotlin.fir.resolve.defaultType
import org.jetbrains.kotlin.fir.symbols.impl.*
import org.jetbrains.kotlin.fir.toEffectiveVisibility
import org.jetbrains.kotlin.fir.types.FirTypeRef
import org.jetbrains.kotlin.fir.types.builder.buildResolvedTypeRef
import org.jetbrains.kotlin.fir.types.computeTypeAttributes
@@ -360,6 +357,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
this.setter = setter
this.containerSource = c.containerSource
this.initializer = c.constDeserializer.loadConstant(proto, symbol.callableId, c.nameResolver)
deprecation = annotations.getDeprecationInfosFromAnnotations(c.session.languageVersionSettings.apiVersion, false)
}.apply {
versionRequirementsTable = c.versionRequirementTable
}
@@ -421,6 +419,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
)
annotations +=
c.annotationDeserializer.loadFunctionAnnotations(c.containerSource, proto, local.nameResolver, local.typeTable)
deprecation = annotations.getDeprecationInfosFromAnnotations(c.session.languageVersionSettings.apiVersion, false)
this.containerSource = c.containerSource
}.apply {
versionRequirementsTable = c.versionRequirementTable
@@ -491,6 +490,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
annotations +=
c.annotationDeserializer.loadConstructorAnnotations(c.containerSource, proto, local.nameResolver, local.typeTable)
containerSource = c.containerSource
deprecation = annotations.getDeprecationInfosFromAnnotations(c.session.languageVersionSettings.apiVersion, false)
}.build().apply {
containingClassAttr = c.dispatchReceiver!!.lookupTag
versionRequirementsTable = c.versionRequirementTable