FIR resolve: add early protection against cyclic property resolve
This commit is contained in:
+3
@@ -1051,6 +1051,9 @@ open class FirBodyResolveTransformer(
|
|||||||
override fun transformProperty(property: FirProperty, data: Any?): CompositeTransformResult<FirDeclaration> {
|
override fun transformProperty(property: FirProperty, data: Any?): CompositeTransformResult<FirDeclaration> {
|
||||||
val returnTypeRef = property.returnTypeRef
|
val returnTypeRef = property.returnTypeRef
|
||||||
if (returnTypeRef !is FirImplicitTypeRef && implicitTypeOnly) return property.compose()
|
if (returnTypeRef !is FirImplicitTypeRef && implicitTypeOnly) return property.compose()
|
||||||
|
if (returnTypeRef is FirImplicitTypeRef) {
|
||||||
|
property.transformReturnTypeRef(StoreType, FirComputingImplicitTypeRef)
|
||||||
|
}
|
||||||
return withScopeCleanup(localScopes) {
|
return withScopeCleanup(localScopes) {
|
||||||
localScopes.addIfNotNull(primaryConstructorParametersScope)
|
localScopes.addIfNotNull(primaryConstructorParametersScope)
|
||||||
withContainer(property) {
|
withContainer(property) {
|
||||||
|
|||||||
Reference in New Issue
Block a user