@@ -512,14 +512,14 @@ open class KotlinFileExtractor(
512512 is IrClassReference -> {
513513 val classRefId = exprId()
514514 val typeAccessId = tw.getLabelFor<DbUnannotatedtypeaccess >(" @\" annotationExpr;{$classRefId };0\" " )
515- extractClassReference(v, parent, idx, null , null , overrideId = classRefId, typeAccessOverrideId = typeAccessId, useUnboundType = true )
515+ extractClassReference(v, parent, idx, null , null , overrideId = classRefId, typeAccessOverrideId = typeAccessId, useJavaLangClassType = true )
516516 }
517517 is IrConstructorCall -> {
518518 extractAnnotation(v, parent, idx, contextLabel)
519519 }
520520 is IrVararg -> {
521521 tw.getLabelFor<DbArrayinit >(" @\" annotationarray;{${parent} };$contextLabel \" " ).also { arrayId ->
522- val type = useType(v.type)
522+ val type = useType(kClassToJavaClass( v.type) )
523523 tw.writeExprs_arrayinit(arrayId, type.javaResult.id, parent, idx)
524524 tw.writeExprsKotlinType(arrayId, type.kotlinResult.id)
525525 tw.writeHasLocation(arrayId, tw.getLocation(v))
@@ -4195,11 +4195,12 @@ open class KotlinFileExtractor(
41954195 enclosingStmt : Label <out DbStmt >? ,
41964196 overrideId : Label <out DbExpr >? = null,
41974197 typeAccessOverrideId : Label <out DbExpr >? = null,
4198- useUnboundType : Boolean = false
4198+ useJavaLangClassType : Boolean = false
41994199 ) =
42004200 exprIdOrFresh<DbTypeliteral >(overrideId).also { id ->
42014201 val locId = tw.getLocation(e)
4202- val type = useType(if (useUnboundType) toUnbound(e.type) else e.type)
4202+ val jlcType = if (useJavaLangClassType) this .javaLangClass?.let { it.typeWith() } else null
4203+ val type = useType(jlcType ? : e.type)
42034204 tw.writeExprs_typeliteral(id, type.javaResult.id, parent, idx)
42044205 tw.writeExprsKotlinType(id, type.kotlinResult.id)
42054206 extractExprContext(id, locId, enclosingCallable, enclosingStmt)
0 commit comments