FIR serializer: serialize annotations on FirTypeRef, not ConeKotlinType

This commit is contained in:
Jinseong Jeon
2020-08-02 23:50:24 -07:00
committed by Mikhail Glukhikh
parent 0a28e5e031
commit 47c47be3d3
3 changed files with 11 additions and 13 deletions
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.descriptors.ClassDescriptor
import org.jetbrains.kotlin.descriptors.ClassKind
import org.jetbrains.kotlin.descriptors.PropertyDescriptor
import org.jetbrains.kotlin.descriptors.Visibilities
import org.jetbrains.kotlin.fir.FirEffectiveVisibilityImpl
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.backend.FirMetadataSource
import org.jetbrains.kotlin.fir.declarations.*
@@ -183,12 +182,11 @@ class FirJvmSerializerExtension @JvmOverloads constructor(
}
}
override fun serializeType(type: ConeKotlinType, proto: ProtoBuf.Type.Builder) {
override fun serializeType(type: FirTypeRef, proto: ProtoBuf.Type.Builder) {
// TODO: don't store type annotations in our binary metadata on Java 8, use *TypeAnnotations attributes instead
// TODO: (FIR) ConeKotlinType does not store annotations, see KT-30066
// for (annotation in type.annotations) {
// proto.addExtension(JvmProtoBuf.typeAnnotation, annotationSerializer.serializeAnnotation(annotation))
// }
for (annotation in type.annotations) {
proto.addExtension(JvmProtoBuf.typeAnnotation, annotationSerializer.serializeAnnotation(annotation))
}
}
override fun serializeTypeParameter(typeParameter: FirTypeParameter, proto: ProtoBuf.TypeParameter.Builder) {