FIR: Do not use FirClass::supertypesComputationStatus

This commit is contained in:
Denis Zharkov
2019-11-12 11:08:22 +03:00
parent 5e0e78e555
commit 3f7bffa6fd
@@ -183,13 +183,12 @@ class FirDeclarationsResolveTransformer(transformer: FirBodyResolveTransformer)
}
private fun prepareLocalClassForBodyResolve(klass: FirClass<*>) {
if (klass.supertypesComputationStatus == SupertypesComputationStatus.NOT_COMPUTED) {
if (klass.superTypeRefs.any { it !is FirResolvedTypeRef }) {
klass.replaceSuperTypeRefs(
klass.superTypeRefs.map { superTypeRef ->
this.transformer.transformTypeRef(superTypeRef, ResolutionMode.ContextIndependent).single
}
)
klass.replaceSupertypesComputationStatus(SupertypesComputationStatus.COMPUTED)
}
if (klass is FirRegularClass) {
klass.transformStatus(transformer, klass.resolveStatus(klass.status).mode())
@@ -550,4 +549,4 @@ class FirDeclarationsResolveTransformer(transformer: FirBodyResolveTransformer)
return valueParameter.compose()
}
}
}
}