FIR: provide error type for property/variable without initializer
This commit is contained in:
+14
@@ -9,6 +9,7 @@ import com.google.common.collect.LinkedHashMultimap
|
||||
import org.jetbrains.kotlin.descriptors.ClassKind
|
||||
import org.jetbrains.kotlin.fir.*
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyAccessor
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.FirValueParameterImpl
|
||||
import org.jetbrains.kotlin.fir.expressions.*
|
||||
import org.jetbrains.kotlin.fir.expressions.impl.FirResolvedQualifierImpl
|
||||
@@ -918,6 +919,19 @@ open class FirBodyResolveTransformer(val session: FirSession, val implicitTypeOn
|
||||
)
|
||||
)
|
||||
}
|
||||
else -> {
|
||||
variable.transformReturnTypeRef(
|
||||
this,
|
||||
FirErrorTypeRefImpl(
|
||||
session, null,
|
||||
if (variable is FirProperty && variable.getter !is FirDefaultPropertyAccessor) {
|
||||
"Not supported: type from property getter"
|
||||
} else {
|
||||
"Cannot infer variable type without initializer / getter / delegate"
|
||||
}
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (variable !is FirProperty) {
|
||||
|
||||
Reference in New Issue
Block a user