IC Mangling: Generate inline class literal instead of underlying type

literal in annotations.
 #KT-30280 Fixed
This commit is contained in:
Ilmir Usmanov
2020-12-29 07:59:29 +01:00
parent 55a5695fc0
commit 80289e4a3f
7 changed files with 44 additions and 1 deletions
@@ -272,8 +272,11 @@ abstract class AnnotationCodegen(
visitor.visitEnd()
}
is IrClassReference -> {
val classType = value.classType
var classType = value.classType
classType.classOrNull?.owner?.let(innerClassConsumer::addInnerClassInfoFromAnnotation)
if (classType.isInlined()) {
classType = classType.makeNullable()
}
annotationVisitor.visit(name, typeMapper.mapType(classType))
}
is IrErrorExpression -> error("Don't know how to compile annotation value ${ir2string(value)}")